문제 : https://programmers.co.kr/learn/courses/30/lessons/42576
코딩테스트 연습 - 완주하지 못한 선수
수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수
programmers.co.kr
나의 풀이 :
def solution(participant, completion):
dic_name = {}
for runner in participant:
if runner not in dic_name.keys(): dic_name[runner] = 0
dic_name[runner] += 1
for runner in completion:
if runner in dic_name.keys(): dic_name[runner] -= 1
for ans in dic_name.keys():
if dic_name[ans] == 1:
answer = ans
return answer
다른 사람 풀이 :
import collections
def solution(participant, completion):
answer = collections.Counter(participant) - collections.Counter(completion)
return list(answer.keys())[0]
배운 점 :
'알고리즘&자료구조 > Programmers' 카테고리의 다른 글
[프로그래머스] 코딩테스트 연습 > 스택/큐 > 프린터 (0) | 2021.10.01 |
---|---|
[프로그래머스] 코딩테스트 연습 > 힙(Heap) > 더 맵게 (0) | 2021.10.01 |
[프로그래머스] 코딩테스트 연습 > 정렬 > K번째수 (0) | 2021.09.25 |
[프로그래머스] 코딩테스트 연습 > 스택/큐 > 기능개발 (0) | 2021.09.23 |