프로그래머스 파이썬 완주하지 못한 선수 프로그래머스 완주하지 못한 선수 파이썬 파이썬 프로그래머스 완주하지 못한 선수 파이썬 완주하지 못한 선수 프로그래머스 완주하지 못한 선수 프로그래머스 파이썬 완주하지 못한 선수 파이썬 프로그래머스
완주하지 못한 선수
https://programmers.co.kr/learn/courses/30/lessons/42576
문제 단순화
- 두 문자열 배열 participant, completion이 있다.
- 배열의 내의 요소는 중복이 가능함
- completion 배열에 없는 participant 배열의 요소를 리턴
풀이방법
- 이름을 기준으로 사람 수를 카운트
- completion 배열의 요소를 이름을 기준으로 하나씩 뺀다
- 남은 사람을 찾아서 반환한다.
팁
- https://wiki.python.org/moin/TimeComplexity
- 딕셔너리에서 키-값 접근은 시간 복잡도가 O(1) 이다.
코드
def solution(participant, completion):
answer = 0
d = {name:0 for name in participant}
for name in participant:
d[name] += 1
for name in completion:
d[name] -= 1
for name in participant:
if d[name] == 1:
answer = name
break
return answer
'프로그래머스' 카테고리의 다른 글
프로그래머스 프린터 파이썬 (0) | 2021.09.07 |
---|---|
프로그래머스 기능개발 파이썬 (0) | 2021.09.07 |
프로그래머스 베스트 앨범 파이썬 (0) | 2021.09.07 |
프로그래머스 위장 파이썬 (0) | 2021.09.07 |
프로그래머스 전화번호 목록 파이썬 (0) | 2021.09.07 |