문제풀이/백준(Boj) 문제풀이
[백준] - 1320. 베스트셀러(python)
얄루몬
2023. 6. 8. 11:32
n = int(input())
dic = {}
MAX = 0
answer = ""
for _ in range(n):
s = input()
if s not in dic:
dic[s] = 0
dic[s] += 1
dic = sorted(dic.items())
dic = dict(dic)
for k,v in dic.items():
if MAX < v:
MAX = v
answer = k
print(answer)
- 같은 판매수라면 더 빠른 문자열이 출력되어야 한다는 조건을 만족하기 위해서 딕셔너리를 정렬한 뒤 다시 딕셔너리로 만들어 주었다.
- 딕셔너리를 정렬하게 되면 [('k', v), ...] 형식으로 변환되기 때문이다.(리스트 안에 튜플 형식)
- 정렬을 해준 뒤 작업을 진행하기 때문에 같은 값을 따로 비교하지 않아도 된다.