ABC155 C - Poll에서 배운



뭔가 사전으로 갈 수 없습니까?
우선 샘플을 보자.



사전에서 각 요소를 계산합니다.
=> 최대 값을 검색하고
=> 사전순으로 최대값에 맞는 것을 print 한다.

사전을 key/item 으로 한 번씩 정렬하면 갈 수 있지?

=> 최대 값을 꺼내 ...item으로 정렬
=> 사전순으로 최대값에 맞는 것을 print 한다. ...key를 사전순으로 정렬

조사하면 수구에 나온 신.

조속히 살펴본다.

Poll.py
N = int(input())
dic = {}

for _ in range(N):#O(n)
    s = input()
    if s not in dic:
        dic[s] = 0
    dic[s] += 1

#item についてソート。
lis = sorted(dic.items(),key=lambda t:t[1])#O(nlogn)
ref = lis[-1][1]#最大値とりだし

#key を辞書順に並び替え
lis = sorted(dic.items(),key=lambda t:t[0])#O(nlogn)
print(lis)

for a,b in lis:#O(n)
    if b == ref:
        print(a)

계산량은 총 O(n) x 2set + O(nlogn) x 2set 이므로,
8*10^5 라고 말한 곳일까.
일단 다녔다.

좋은 웹페이지 즐겨찾기