[파이썬][백준 10214번] Baseball
1. 문제
[Bronze III] Baseball - 10214
성능 요약
메모리: 30840 KB, 시간: 68 ms
분류
구현(implementation)
문제 설명
경근이는 수업 과제의 일환으로 연세대학교의 역사를 조사하고 있었다. 케케묵은 도서관 구석에서 경근이가 발견한 것은 역대 연고전의 야구경기 실황 기록문서였다.
하지만 문서를 가지고 있음에도 불구하고 한 눈에 당시의 경기 승패를 파악하기에는 어려움이 많았는데, 문서에는 회차별 양 팀 획득 점수만이 적혀져 있기 때문이었다.
경근이는 주어진 방대한 자료를 해석하는것이 귀찮았기 때문에 절친한 프로그래머 친구인 당신에게 도움을 요청했다.
주어진 실황 기록문서에서 어떤 팀이 이겼는지를 알아내 경근이를 도와주자!
입력
입력 파일의 첫 번째 줄에 테스트 케이스의 수를 의미하는 자연수 T가 주어진다. 그 다음에는 T개의 테스트 케이스가 주어진다.
각 테스트 케이스는 9줄에 걸쳐서 입력되며, 매 줄마다 해당 회의 연세대 득점 Y와 고려대 득점 K가 공백으로 구분되어 주어진다. 이 두 수는 0이상 9이하이다.
출력
각각의 케이스마다 한 줄에 연세대가 이겼을 경우 "Yonsei", 고려대가 이겼을 경우 "Korea", 비겼을 경우 "Draw"를 출력한다.
출처: 백준, https://https://www.acmicpc.net/
2. 해결방법 시간복잡도
- 단순 코딩 O(N^2)
3. 문제 해결 및 코드
-
주석을 참고하면서 이해를 돕습니다.
4. 알고리즘 및 해설
- 받아야 될 값은 T로 받는다.
- 이중 반복문으로 해결하는데 처음 시작되는 반북문에서 연세대와 고려대 딕셔너리를 만들어준다.
- 이후 반복문에서 해당 키에 값을 부여해주고 if문을 통해 경우의 수로 계산해준다.
5. 짚고 넘어가기
- sys.stdin.readline() 함수를 통해 메모리 효율을 줄이는 방법
- 여러개의 특정 이름이나 값에 숫자를 더하거나 빼야하는 경우 변수보다 딕셔너리가 유용하다. 1개의 경우 그냥 변수가 편하다.