백준 1302 - 베스트셀러 (파이썬)
글 작성자: pental
https://www.acmicpc.net/problem/1302
풀이
진짜 어마어마 하게 쉬운문제이다.
N개의 책 제목이 주어질 때, 가장 많이 팔린 책의 제목을 출력하되, 여러 개라면 사전순으로 가장 앞서는 제목을 출력하는 문제이다.
시간 복잡도 분석
- N개의 책 제목을 입력받으면서 딕셔너리에 저장하는 과정 → O(N)
- count.items()를 순회하면서 최대값을 찾는 과정 → O(M)
- 최악의 경우 O(N + M) 이기에 매우 효율적
코드
# 백준 1302 - 베스트셀러
# 분류 : 문자열, 정렬
N = int(input())
count = {}
for _ in range(N) :
title = input()
if title not in count :
count[title] = 0
count[title] += 1
max_value = 0
max_title = ""
for key, value in count.items() :
if max_value < value :
max_value = value
max_title = key
elif max_value == value :
if max_title > key :
max_title = key
print(max_title)
'Programming > 백준' 카테고리의 다른 글
백준 9375 - 패션왕 신해빈 (파이썬) (0) | 2025.03.15 |
---|---|
백준 21758 - 꿀 따기 (파이썬) (1) | 2025.03.14 |
백준 1092 - 배 (파이썬) (0) | 2025.03.12 |
백준 2075 - N번째 큰 수 (파이썬) (0) | 2025.03.11 |
백준 16439 - 치킨치킨치킨 (0) | 2025.03.11 |
댓글
이 글 공유하기
다른 글
-
백준 9375 - 패션왕 신해빈 (파이썬)
백준 9375 - 패션왕 신해빈 (파이썬)
2025.03.15 -
백준 21758 - 꿀 따기 (파이썬)
백준 21758 - 꿀 따기 (파이썬)
2025.03.14 -
백준 1092 - 배 (파이썬)
백준 1092 - 배 (파이썬)
2025.03.12 -
백준 2075 - N번째 큰 수 (파이썬)
백준 2075 - N번째 큰 수 (파이썬)
2025.03.11