반응형

안녕하세요. 오랜만이에요!

 

요즘..백준 알고리즘 푸느라 정신이 없네요 ㅎㅎㅎ

해놓은 건 많은데 여기에 올리는 걸 깜빡깜빡해요...

오늘 문제는 이것입니다!

 

https://www.acmicpc.net/problem/1302

 

1302번: 베스트셀러

첫째 줄에 오늘 하루 동안 팔린 책의 개수 N이 주어진다. 이 값은 1,000보다 작거나 같은 자연수이다. 둘째부터 N개의 줄에 책의 제목이 입력으로 들어온다. 책의 제목의 길이는 50보다 작거나 같고

www.acmicpc.net

제가 최근에 deque에 대해 배워서 활용해봤어요!

 

from collections import deque

n = int(input())

count = dict()
for i in range(n):
    name = input()
    count[name] = count.get(name, 0) + 1

value = list(count.values())
king = value[0]
title = deque()
c = 0
for x, y in count.items():
    if y == king:
        title.append(x)
        c += 1

    if y > king:
        for _ in range(c):
            title.pop()
        title.append(x)
        king = y

print(min(title))

여기서 c변수는 이전에 있었던 tilte 큐에 있는 원소들을 전부 빼주는 역할을 합니다!

deque를 처음으로 이용해봐서 그런지 뿌듯하네요!!

반응형

'coding > python' 카테고리의 다른 글

[파이썬] divmod함수  (0) 2020.11.27
[파이썬] 백준 알고리즘 1157번  (0) 2020.09.19
[파이썬] 백준 알고리즘 2577번  (0) 2020.09.01
[파이썬] 인코딩 & 디코딩  (0) 2020.07.24
[파이썬] 정규식 (regular expression)  (0) 2020.07.09

+ Recent posts