https://school.programmers.co.kr/learn/courses/30/lessons/42576
def solution(participant, completion):
answer=''
for idx, p in enumerate(participant):
if p in completion:
continue
else:
answer = participant[idx]
return answer
아무생각 없이 짠 내 코드😥
이름이 같은 사람이 여러명 있고 그 중 한사람만 완주하는 경우에는 이 코드가 적용이 안되고 여러모로 엉망인듯,,
*Collections 모듈 Counter*
문자열이나, list의 요소를 카운팅하여 많은 순으로 딕셔너리형태로 리턴한다.
Counter() 객체끼리의 뺄셈 가능
import collections
def solution(participant, completion):
participant.sort()
completion.sort()
answer = collections.Counter(participant) - collections.Counter(completion)
return list(answer)[0]
completion의 길이는 participant보다 1 작기 때문에 list변환 후 첫번째 값을 리턴하면 되는 것 같다!
'Algorithm > Problems' 카테고리의 다른 글
[프로그래머스] 전화번호 목록 Python (0) | 2022.10.28 |
---|---|
[프로그래머스] 폰켓몬 python (0) | 2022.10.26 |
[프로그래머스] K번째 수 (0) | 2022.08.21 |
[프로그래머스] 체육복 (탐욕법 Greedy) (0) | 2022.08.16 |
[백준] 2675번 문자열 반복 (0) | 2022.08.11 |