백준 python 기록

프로그래머스 완주하지 못한 선수

작지 2021. 11. 5. 12:46

링크: https://programmers.co.kr/learn/courses/30/lessons/42576

 

코딩테스트 연습 - 완주하지 못한 선수

수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수

programmers.co.kr

 

단 한명의 선수만 들어오지 못한다는 경우를 생각하지 못하고 꽤 해맸다

return 값에 "" 도 포함하라는건가?? 라는 뻘짓을 오래했다.

 

딕셔너리 값에 하나씩 늘린다음 completion 값에서 하나씩 뺀 다음 0 이상인 경우에는 인출

def solution(participant, completion):
    dic = {}

    answer = ''
    for i in participant:
        if i not in dic:
            dic[i] = 1
        else:
            dic[i] += 1

    for i in completion:
        dic[i] -= 1

    for key, values in enumerate(dic):
        if dic[values] > 0:
            answer += values


    return answer