코딩테스트 연습 - 완주하지 못한 선수 | 프로그래머스 (programmers.co.kr)
#완주하지 못한 선수
from collections import Counter
def solution(p, c):
p = Counter(p)
c = Counter(c)
answer = ''
for person, cnt in p.items():
if p[person] != c[person]:
answer += person
return answer
#####################################
#완주하지 못한 선수_2
from collections import Counter
def solution(p, c):
p = dict(Counter(p))
c = dict(Counter(c))
answer = ''
for person in p.keys():
try:
if p[person] != c[person]:
answer += person
except:
answer += person
return answer
########################################
#완주하지 못한 선수_3
from collections import Counter
def solution(p, c):
answer = Counter(p) - Counter(c)
return list(answer.keys())[0]
해시에 해당하는 문제여서 dict을 이용해주려고 하였고 Counter가 단순히 dict와 똑같지 않다라는 점을 알게 되었다.
Counter는 dict와는 다르게
빼고 더하기가 가능하다
key가 없는 경우 자동으로 value가 0으로 처리된다.
반응형