# 시간초과
from collections import Counter
def solution(participant, completion):
answer = ''
for i in participant:
if i not in completion:
answer = i
if answer == '':
parti = Counter(participant)
answer = parti.most_common(1)[0][0]
return answer
print(solution(["leo", "kiki", "eden"],["eden", "kiki"]))
print(solution(["marina", "josipa", "nikola", "vinko", "filipa"],["josipa", "filipa", "marina", "nikola"]))
print(solution(["mislav", "stanko", "mislav", "ana"],["stanko", "ana", "mislav"]))
블로그 링크(설명잘됨) : https://coding-grandpa.tistory.com/85
브루트포스 방법
def solution(participant, completion):
answer = ''
leng = len(participant)
participant.sort()
completion.sort()
completion.append('0')
for i in range(leng):
if completion[i] != participant[i]:
answer = participant[i]
break
return answer
print(solution(["leo", "kiki", "eden"],["eden", "kiki"]))
print(solution(["marina", "josipa", "nikola", "vinko", "filipa"],["josipa", "filipa", "marina", "nikola"]))
print(solution(["mislav", "stanko", "mislav", "ana"],["stanko", "ana", "mislav"]))
def solution(participant, completion):
hashDict = {}
sumHash = 0
# 1. Hash : Participant의 dictionary 만들기
# 2. Participant의 sum(hash) 구하기
for part in participant:
hashDict[hash(part)] = part
sumHash += hash(part)
# 3. completion의 sum(hash) 빼기
for comp in completion:
sumHash -= hash(comp)
# 4. 남은 값이 완주하지 못한 선수의 hash 값이 된다
return hashDict[sumHash]
print(solution(["leo", "kiki", "eden"],["eden", "kiki"]))
print(solution(["marina", "josipa", "nikola", "vinko", "filipa"],["josipa", "filipa", "marina", "nikola"]))
print(solution(["mislav", "stanko", "mislav", "ana"],["stanko", "ana", "mislav"]))
from collections import Counter
def solution(participant, completion):
# 둘의 차를 구하면 정답만 남아있는 counter를 반환한다
answer = Counter(participant) - Counter(completion)
# 4. counter의 key값을 반환한다 (이때, answer에 값이 하나밖에 없어서 list( .keys())가 가능한거임)
return list(answer.keys())[0]
print(solution(["leo", "kiki", "eden"],["eden", "kiki"]))
print(solution(["marina", "josipa", "nikola", "vinko", "filipa"],["josipa", "filipa", "marina", "nikola"]))
print(solution(["mislav", "stanko", "mislav", "ana"],["stanko", "ana", "mislav"]))