https://school.programmers.co.kr/learn/courses/30/lessons/42576
https://github.com/stellaluminary/Programmers
def solution(participant, completion):
p = {}
for i in participant:
if i not in p:
p[i] = 1
else:
p[i] += 1
for i in completion:
if i in p:
p[i] -= 1
for i in p:
if p[i] != 0:
return i
collections.Counter를 활용하면 list의 각 value의 개수를 셀 수 있다.
또한 Counter 끼리 뺄쎔을 통해 남은 원소가 무엇인지 알 수 있다.
from collections import Counter
def solution(participant, completion):
answer = Counter(participant) - Counter(completion)
return list(answer)[0]
1명의 차이만 있으므로 정렬을 통해 하나씩 빼고 그 차이를 통한 결과를 도출할 수 있다.
def solution(participant, completion):
participant.sort()
completion.sort()
for p, c in zip(participant, completion):
if p != c:
return p
return participant[-1]