https://programmers.co.kr/learn/courses/30/lessons/42576
해시와 관련된 문제다.
마라톤 선수들이 참여하는데 단 한 명이 완주하지 못했다.
완주한 선수와 참여 선수가 배열로 주어졌을 때 완주하지 못한 한 선수를 찾아내라는 문제이다.
📃 조건
python
def solution(participants, completions):
names = {}
for participant in participants:
if participant in names:
names[participant] += 1
else:
names[participant] = 1
for completion in completions:
names[completion] -= 1
for player in participants:
if names[player] > 0:
return player
javascript
function solution(participant, completion) {
const obj = {};
for (let player of participant) {
if (obj[player]) {
obj[player] += 1;
}else {
obj[player] = 1;
}
}
for (let finisher of completion) {
if (obj[finisher]) {
obj[finisher] -= 1;
}
}
for (let player of participant) {
if (obj[player] >= 1) {
return player;
}
}
}
js에서도 똑같이 풀었다!
2021.08.25