가장 많이 팔린 책을 출력하되, 가장 많이 팔린 책이 동일한 개수를 갖는다면 사전 순으로 앞선 것을 출력합니다.

Dictionary를 사용해야 하는데, Python 3.6부터는 입력된 key의 순서에 따라서 정렬이 된다고 합니다.

 

따라서 Dictionary에 input 값을 넣기 전에, 사전 순으로 정렬을 한 다음 값을 담아 줍니다.

그리고 반복문을 통해 가장 많이 팔린 "책의 개수"와 "책 이름"으로 갱신되게 합니다. 

import sys

# sys.stdin = open("C:/Users/JIn/PycharmProjects/coding_Test/input.txt", "rt")

n = int(input())
books = [input() for _ in range(n)]
books.sort(reverse=False)  
books_dict = {}
for book in books:
    books_dict[book] = books_dict.get(book, 0) + 1 

mx = -1
mx_k = ''
for k, v in books_dict.items(): 
    if mx < v:
        mx = v
        mx_k = k
print(mx_k)

+ Recent posts