반응형
[ Contents ]
1. 문제 (링크 참조)
2. 문제 풀이
팔린 책 목록을 입력받고, 가장 많이 팔린 책 제목을 출력하는 문제입니다.
3. 코드
import sys
input = sys.stdin.readline
# 입력
N = int(input())
book_dict = {}
for _ in range(N):
book = input().rstrip()
# 이미 등록된 책이면 1개 추가
if book in book_dict:
book_dict[book] += 1
# 등록되지 않은 책이면 새로 등록
else:
book_dict[book] = 1
# 판매량이 많은 순으로 정렬
res = list(book_dict.items())
res.sort(key=lambda x: (-x[1], x[0]))
print(res[0][0])
파이썬의 기본 자료구조인 '딕셔너리'를 이용해서 해시맵을 구현합니다.
저는 딕셔너리로 책의 개수를 셌지만, 그냥 책 제목만 받은 뒤에 Count 하셔도 됩니다.
2022.06.16 - [Algorithm] - [자료구조/해시] 백준 11652 카드 - 파이썬(Python)
( Counter 라이브러리를 사용한 풀이 )
반응형
'Algorithm' 카테고리의 다른 글
[구현/수학] 백준 2702 초6 수학 - 파이썬(Python) (0) | 2022.06.17 |
---|---|
[자료구조/해시] 백준 11652 카드 - 파이썬(Python) (0) | 2022.06.16 |
[정렬/탐색] 백준 2693 N번째 큰 수 - 파이썬(Python) (0) | 2022.06.14 |
[자료구조/스택] 백준 17413 단어 뒤집기 2 - 파이썬(Python) (0) | 2022.06.13 |
[구현/수학] 백준 9076 점수 집계 - 파이썬(Python) (0) | 2022.06.12 |
댓글