Notice
Recent Posts
Recent Comments
Link
«   2025/03   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31
Tags
more
Archives
Today
Total
관리 메뉴

하루에 하나씩 공부하기

완주하지 못한 선수-LV1 본문

파이썬

완주하지 못한 선수-LV1

dltaexox 2025. 2. 25. 16:17

- 문제

마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수들의 이름이 담긴 배열 completion이 주어질 때, 완주하지 못한 선수의 이름을 return 하도록 solution 함수를 작성해주세요.

 

코딩테스트 연습 - 완주하지 못한 선수 | 프로그래머스 스쿨

 

프로그래머스

SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

 

- 키포인트

딕셔너리에서 빼기를 어떻게 접근해야 할까

 

- 코드

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[len(participant)-1]

두 리스트를 정렬한 후, 값이 같지 않다면 완주하지 못한 선수

끝까지 같다면 리스트에서 마지막에 남은 선수가 완주하지 못한 선수

def solution(participant, completion):
    dict={}
    sumhash=0
    for i in participant:
        dict[hash(i)]=i
        sumhash+=hash(i)
    for j in completion:
        sumhash-=hash(j)
    return dict[sumhash]

해시 어렵다

딕셔너리에 원소의 해시값을 인덱스로 사용

그후 해시의 합과 차를 통해 마지막 하나 남은 원소의 인덱스를 구함

'파이썬' 카테고리의 다른 글

K번째수-LV1  (0) 2025.03.09
베스트앨범-LV3  (1) 2025.03.09
의상-LV2  (0) 2025.02.28
전화번호 목록-LV2  (0) 2025.02.27
폰켓몬-LV1  (0) 2025.02.25