https://programmers.co.kr/learn/courses/30/lessons/42576
코딩테스트 연습 - 완주하지 못한 선수
수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수
programmers.co.kr
백준에도 동일한 문제가 있을것이다.
풀었던 기억이 있다.
근데 이번에는 못풀었다...
코드 <Counter 사용> :
from collections import Counter
def solution(participant, completion):
answer=Counter(participant) - Counter(completion)
return list(answer.keys())[0]
return 하는 곳에서 list(ans)[0]을 해도 정답이다.
participant - completion을 빼고 완주하지 못한 선수만 남긴다.
그냥 answer만 출력
answer.keys()를 출력
여기서 [0]을 하면 에러가 발생한다. dict의 key모음이기 때문이다.
list()를 통해 list화 해준 후 [0]을 하면 잘 출력된다.
코드 < dict 사용 > :
def solution(participant, completion):
part = {}
for par in participant :
if par in part :
part[par]+=1
else :
part[par]=1
for com in completion :
if com in part :
part[com]-=1
for k,v in part.items() :
if v == 1 :
return k
배운점 :
1. collections의 Counter
counter에 리스트를 넣으면 알아서 이렇게 들어간다.
유용하다.
참고 블로그 :
[PYTHON-프로그래머스][Level1]-완주하지 못한 선수
수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다.마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수들
velog.io
복습 :
✅ 20220623
✅ 20220626
✅ 20220630
'알고리즘 > 프로그래머스문제풀이' 카테고리의 다른 글
[Python/프로그래머스]위장_해시 (0) | 2022.06.14 |
---|---|
[Python/프로그래머스]전화번호 목록_해시 (0) | 2022.06.14 |
[Python/프로그래머스]입국심사 _이분탐색 (0) | 2022.06.14 |
[Python/프로그래머스]정수 삼각형 _DP (0) | 2022.06.14 |
[Python/프로그래머스]N으로 표현 _DP (0) | 2022.06.14 |