[javascript]Programmers Hashlevel 1を完走しなかった選手
1547 ワード
質問する
[Programmers]Hashlevel 1を完走しなかった選手
チェックポイント
array.include()関数は解析を簡略化します.
同名の人の制限事項が困難に迫っている可能性がある.
そのため、重複検査に工夫を凝らし、重要な点を見逃したような気がします.
解答#1-重複文の使用
👉ツールバーの👈繰り返し比較できる簡単な方法があります.
function solution(participant, completion) {
participant.sort();
completion.sort();
for (let index = 0; index < participant.length; index++) {
if (participant[index] !== completion[index]) {
return participant[index];
}
}
}
プール#2-Hashの使用
function solution(participant, completion) {
const participantObj = {}; // KEY: 참여자 이름, VALUE: 동명이인 수
for (let name of participant) {
participantObj[name] = participantObj[name] ? participantObj[name] + 1 : 1;
}
// 완주자 목록에 있는 경우 VALUE값 감소
for (let name of completion) {
participantObj[name] -= 1;
}
for (let name in participantObj) {
// completion의 길이는 participant의 길이보다 1 작으므로
if (participantObj[name] === 1) {
return name;
}
}
}
Reference
この問題について([javascript]Programmers Hashlevel 1を完走しなかった選手), 我々は、より多くの情報をここで見つけました https://velog.io/@jacarandaring/javascript-Programmers-Hash-level1-완주하지-못한-선수テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol