완주하지 못한 선수
문제
도전한 선수와 완주한 선수 리스트가 주어질때 완주한 선수를 선별하기.
해결
이중 반복문을 사용한 경우
def solution(participant, completion):
for i in completion:
if i in participant:
participant.remove(i)
return participant[0]
시간 복잡도가 아쉽다.
정렬을 사용한 경우
def solution(completion, participant):
completion.sort()
participant.sort()
for i, o in list(zip(completion, participant):
if i!=o:
print(i)
print(participant[-1])
해시맵을 사용한 경우
def solution(participant, completion):
import collections
count = collections.Counter(participant) - collections.Counter(completion)
return list(count.keys())[0]
Leave a comment