[알고리즘 문제풀이] 베스트셀러

황인권·2023년 3월 22일
0

알고리즘 문제풀이

목록 보기
21/81

문제 제목 : 베스트셀러

문제 난이도 : 하

문제 유형 : 탐색, 문자열

https://www.acmicpc.net/problem/1302
시간제한 : 2초
메모리 제한 : 128MB

문제풀이 아이디어

  1. 책의 개수(N) N의 최대값은 1,000이다.
  2. 책 제목의 길이는 50보다 작거나 같고 알파벳 소문자로만 이루어져있다.
  3. Set, Dictionary 자료형을 이용하면 효율적인데 -> 등장횟수를 계산할 때에는 Dictionary 자료형이 효과적이다.

< 소스코드 >

n = int(input())

books = {}

for _ in range(n):
    book = input()
    if book not in books:
        books[book] = 1
    else:
        books[book] += 1
        
target = max(books.values()) # 가장 높은 숫자를 저장
result = []

# 가장 많이 팔린 책을 result에 저장
for book, number in books.items():
    if number == target:
        result.append(book)
        
print(sorted(result)[0])
profile
inkwon Hwang

0개의 댓글