처음에 틀린 이유 : 가장 많이 팔린 책이 여러개일 경우 사전 순으로 가장 앞서는 제목을 출력한다는 조건을 빼먹었다
# 2번째 시도
n = int(input())
book_list = dict()
for i in range(n):
book = input()
if book in book_list:
book_list[book] += 1
else:
book_list[book] = 1
# 딕셔너리를 튜플의 형태로 빼서 책의 제목을 기준으로 오름차순 정렬
book_list = sorted(book_list.items(), key=lambda x: x[0])
# 책 제목을 기준으로 정렬된 튜플을 책의 개수로 내림차순 정렬
book_list = sorted(book_list, key=lambda x:x[1], reverse=True)
# 정렬된 튜플의 첫번째 데이터의 책제목만 출력
print(book_list[0][0])
통과 하고 좀 더 찾아보니 다중 조건 정렬하기라는 방법이 있었고
n = int(input())
book_list = dict()
for i in range(n):
book = input()
if book in book_list:
book_list[book] += 1
else:
book_list[book] = 1
book_list = sorted(book_list.items(), key=lambda x:(-x[1],x[0]))
print(book_list[0][0])
이렇게 수정할 수 있었다
'백준' 카테고리의 다른 글
백준 10870번: 피보나치 수열 5 (0) | 2023.08.08 |
---|---|
백준 20365번: 블로그2 (파이썬) (0) | 2023.08.02 |
백준 25192번: 인사성 밝은 곰곰이 (파이썬) (0) | 2023.07.30 |
백준 18258번: 큐 2 (파이썬) (0) | 2023.07.30 |
백준 17219번: 비밀번호 찾기 (파이썬) (0) | 2023.07.30 |