[프로그래머스 코테 연습] 완주하지 못한 선수

Gorae·2021년 6월 12일
0

알고리즘

목록 보기
10/19
post-thumbnail

문제 요약

참여한 선수들의 이름이 담긴 배열과 완주한 선수들의 이름이 담긴 배열이 주어질 때, 완주하지 못한 선수 이름을 return.( 완주 선수 배열 길이 = 참여 선수 배열 -1 ) 동명 이인이 있을 수 있음.

풀이1. Counter 클래스 사용

collections 관련 공식 문서 https://docs.python.org/ko/3/library/collections.html

import collections

def solution(participant, completion):
    answer = collections.Counter(participant) - collections.Counter(completion)
    return list(answer.keys())[0]

풀이2. zip() 사용

def solution(participant, completion):
    participant.sort()
    completion.sort()
    for p, c in zip(participant, completion):
        if p != c:
            return p
    return participant[-1]

느낀점

  • Counter 클래스 사용 풀이가 획기적이라 생각했지만, zip 사용한 풀이가 정확성, 효율성 측면에서 더 좋게 나왔다.
profile
좋은 개발자, 좋은 사람

0개의 댓글