-
[백준] 1302 베스트셀러백준 Online Judge 2021. 9. 14. 21:40
1302번: 베스트셀러
첫째 줄에 오늘 하루 동안 팔린 책의 개수 N이 주어진다. 이 값은 1,000보다 작거나 같은 자연수이다. 둘째부터 N개의 줄에 책의 제목이 입력으로 들어온다. 책의 제목의 길이는 50보다 작거나 같고
www.acmicpc.net
문제 해설
- 가장 많이 팔린 책의 제목을 출력한다.
- 문자열을 출력하는 문제와 동일.
- 등장 횟수를 계산할 때는 dictionary를 이용하면 효과적
- 입력 : 첫 번째 줄에 책의 개수. 두 번째부터 책의 제목.
# 책의 개수를 입력 받는다. n = int(input()) # 책의 제목을 담을 딕셔너리 books. books = {} # 책의 제목을 담는다. for _ in range(n): book = input() # 딕셔너리에 존재 하지 않는 책이라면 개수 1 추가. if book not in books: books[book] = 1 # 이미 존재하는 책이라면 1 증가. else: books[book] += 1 # 가장 많은 책의 개수를 target에 입력. target = max(books.values()) array = [] for book, number in books.items(): # 가장 많은 책의 개수 target과 같은 책의 정보를 array에 입력. if number == target: array.append(book) print("답: ", sorted(array)[0])
GitHub - DAWUNHAN/Algorithms-and-DataStructure: Algorithms and DataStructure with Python
Algorithms and DataStructure with Python. Contribute to DAWUNHAN/Algorithms-and-DataStructure development by creating an account on GitHub.
github.com
[패스트캠퍼스] 알고리즘 / 기술면접 완전 정복 올인원 패키지 Online. 강의를 참고하였습니다.
'백준 Online Judge' 카테고리의 다른 글
[백준] 1543 - 문서 검색 (0) 2021.09.15 [1568] 새 (0) 2021.09.15 [백준] 1236 성 지키기 (0) 2021.09.14 [백준] 11004 k번째 수 (0) 2021.08.31 [백준] 2751 수 정렬하기 2 (0) 2021.08.31