목차
📝 문제
📝 문제
https://school.programmers.co.kr/learn/courses/30/lessons/42576
프로그래머스
SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
🎯 알고리즘
💡 문제 이해
- 마라톤에 참가한 사람들: participant 리스트
- 완주한 사람들: completion 리스트
- 단 한 명만 완주를 못한 상황
- 참가자 중에서 완주하지 못한 사람의 이름을 찾아서 반환하는 문제
단, 동명이인(이름이 같은 사람)도 있을 수 있다는 점! 주의!
💡 문제 접근
방법 1: collections.Counter 사용 (가장 효율적)
- participant와 completion 리스트에서 이름별 개수를 세기
- 두 개의 Counter를 빼기 연산으로 비교
- → 남는 이름이 바로 완주 못한 사람
✅ 실습 인증 _코드
from collections import Counter
def solution(participant, completion):
answer= Counter(participant) - Counter(completion)
return list(answer.keys())[0]
'알고리즘 > python' 카테고리의 다른 글
[백준/Python] 1296번: 팀 이름 정하기 (0) | 2025.04.22 |
---|---|
[프로그래머스/Python] 250125번 (0) | 2025.04.22 |
[프로그래머스/Python] 340199번: 지폐접기 [PCCE 기출문제 9번] (0) | 2025.04.21 |
[프로그래머스/Python] 12943번: 콜라츠 추측 (0) | 2025.04.21 |
[백준/Python] 1049번: 기타줄 (0) | 2025.04.11 |