SMALL
https://school.programmers.co.kr/learn/courses/30/lessons/42576?language=python3
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
프로그래머스 완주하지 못한 선수 문제의 풀이입니다.
문제 풀이는 파이썬 코드로 작성되었습니다.
from collections import Counter
# 입력 받기
runner = list(input().split())
finish = list(input().split())
result = Counter(runner) - Counter(finish)
# result에는 한 쌍의 dictionary가 저장된다
# result에 저장된 한 쌍의 dictionary가 완주하지 못한 선수이다
# 참여한 선수들(runner)에서 완주한 선수들(finish)을 모두 뺐기 때문이다
print(list(result.keys())[0])
# 따라서 result에 저장된 한 쌍의 dictionary의 key값이 바로 완주하지 못한 선수의 이름이다
# result.keys()를 호출하면 key "값"이 아닌 "객체"가 반환되므로 list로 변환한다음 인덱스를 이용해 key값을 출력한다.
이 문제는 파이썬의 딕셔너리(dictionary)를 잘 이해하고 있다면 쉽게 풀 수 있는 문제이다.