[Python] 백준 알고리즘 1302번 - 베스트셀러
2022. 5. 6. 19:56ㆍ알고리즘/문제풀이
[Python] 백준 알고리즘 1302번 - 베스트셀러
문제 출처: https://www.acmicpc.net/problem/1302
접근 방법
딕셔너리의 키와 값을 이용하여 접근 , sorted 메서드 정렬을 통해서 문제를 풀이하였다.
풀이 코드
import sys
input = sys.stdin.readline
n = int(input())
book = dict()
for i in range(n):
cur = input().strip()
if book.get(cur):
book[cur] += 1
else:
book[cur] = 1
# 정렬 수행, lambda를 사용하며 key 람다를 사용한다.
# 먼저 items() 메서드를 이용해서 키와 값들의 쌍을 가저온다
# 후에 key값을 이용하여 첫번째 인자를 기준으로 내림차순 정렬을 시행한다.
# 따라서 문제에서 요구하는 바와 같이 가장많이 팔린 책 순으로 정렬 및 만약 책의 이름이 겹친다면
# 사전순으로 정렬이 된다.
result = sorted(list(book.items()), key = lambda x: (-x[1], x[0]))
print(result[0][0])
'알고리즘 > 문제풀이' 카테고리의 다른 글
[Python] 백준 알고리즘 11726 - 2 x n 타일링 (0) | 2022.07.30 |
---|---|
[Python] 백준 11728 - 배열 합치기 (0) | 2022.06.27 |
[Python] 백준 알고리즘 13417번 - 카드 문자열 (0) | 2022.05.04 |
[Python] 백준 알고리즘 14425번 문자열 집합 (0) | 2022.05.04 |
[Python] 백준 알고리즘 13549번 - 숨바꼭질 3 (0) | 2022.04.12 |