IT 세계의 후아
[프로그래머스]LV1_완주하지 못한 선수(Hash) 본문
participant: 참가자 목록
completion: 완주자 목록
return: 완주하지 못한 참가자 한 명의 이름
*중복된 이름이 있을 수 있음
# 내 첫 풀이
def solution(participant, completion):
names_dic = dict(zip(participant, [0]*len(participant)))
for i in participant:
names_dic[i] += 1
for j in completion:
names_dic[j] -= 1
return [k for k,v in names_dic.items() if v!=0][0]
# 다른 사람 풀이 참고-Hash 활용
def solution(participant, completion):
answer = ''
temp = 0
dic = {}
for part in participant:
dic[hash(part)] = part
temp += int(hash(part))
for com in completion:
temp -= hash(com)
answer = dic[temp]
return answer