IT 세계의 후아

[프로그래머스]LV1_완주하지 못한 선수(Hash) 본문

Coding/Algorithm

[프로그래머스]LV1_완주하지 못한 선수(Hash)

후__아 2024. 9. 27. 23:49

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