본문 바로가기

Python/코딩테스트

[프로그래머스/python] 코딩테스트 연습 Lv.1 (6월 세 번째 주)

728x90

완주하지 못한 선수

문제 설명

완주하지 못한 마라톤 선수 찾기!

participant : 참가자

completion : 완주한 사람

완주하지 못한 사람은 단 한명 존재!

단, 동명이인이 있을 수 있음

participant와 completion 을 비교하여 없는 사람 찾으면 됨!

입출력 예

Solution

def solution(participant, completion):
    answer = ''
    participant.sort()
    completion.sort()
    for i in range(len(completion)):
        if participant[i]!=completion[i]:
            return participant[i]
    return participant[-1]

1(중복X). participant = [leo, kiki, eden] ---sort---> [eden, kiki, leo] / completion = [eden, kiki] ---sort---> [eden, kiki]

 completion 길이만큼 비교해도 다른 사람이 나오지 않음

-> participant에서 비교하지 않은 맨 뒤 사람(leo)이 완주하지 못한 사람이 됨 -> return participant[-1]

2(중복0). participant ---sort---> [ana, mislav, mislav, stanko] / completion ---sort---> [ana, mislav, stanko]

2번째 index(participant에서의 2번째 mislav과 completion에서의 stanko)에서 불일치 발생 -> return participant[2] = mislav

Result

728x90