본문 바로가기
알고리즘/프로그래머스(Python)

[프로그래머스/Python] 완주하지 못한 선수

by frog 2021. 10. 4.

[프로그래머스/Python] 완주하지 못한 선수

문제

  • 수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다.
  • 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수들의 이름이 담긴 배열 completion이 주어질 때, 완주하지 못한 선수의 이름을 return 하도록 solution 함수를 작성해주세요.

● 소스코드

def solution(participant, completion):
    answer = ''
    participant.sort()
    completion.sort()
    
    length = len(participant)
    
    for idx, val in enumerate(participant):
        if idx == length - 1:
            answer = participant[length - 1]
            break
        if val != completion[idx]:
            answer = val
            break
    return answer

풀이

  • 특별한 알고리즘은 없다.
  • 1명의 선수만 완주하지 못하였으므로, participant와 completion을 정렬하여 각 요소를 비교한다.
  • 만약 동일 idx의 요소 값이 다르다면 해당 participant가 완주하지 못한 것이다.

 

* https://programmers.co.kr/learn/courses/30/lessons/42576

 

코딩테스트 연습 - 완주하지 못한 선수

수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수

programmers.co.kr

댓글