https://school.programmers.co.kr/learn/courses/30/lessons/42576
해시
def solution(participant, completion):
for p, c in zip(sorted(participant), sorted(completion)):
if p != c:
return p
return sorted(participant)[-1]
나랑 똑같이 푼 사람이 많은 것 같음
import collections
def solution(participant, completion):
answer = collections.Counter(participant) - collections.Counter(completion)
return list(answer.keys())[0]
Counter 객체를 사용했다. (처음 봤음)
아래 예시 코드로 이해해보자
import collections
participant = ["mislav", "stanko", "mislav", "ana"]
completion = ["stanko", "ana", "mislav"]
print(collections.Counter(participant))
print(collections.Counter(completion))
print(collections.Counter(participant) - collections.Counter(completion))
Counter({'mislav': 2, 'stanko': 1, 'ana': 1})
Counter({'stanko': 1, 'ana': 1, 'mislav': 1})
Counter({'mislav': 1})
딕셔너리처럼 나오는데 연산도 가능한 객체인 것 같음