[javascript-algorithm]プログラマー-シミュレーション試験
17753 ワード
(1)問題リンク
https://programmers.co.kr/learn/courses/30/lessons/42840?language=javascript
(2)解答と解説1
-問題を解く
const answers = [1, 3, 2, 4, 2]
function solution1(answers){
const answer = []
const mathGiver = [[1, 2, 3, 4, 5], [2, 1, 2, 3, 2, 4, 2, 5], [3, 3, 1, 1, 2, 2, 4, 4, 5, 5]]
const count = [0, 0, 0]
for(let i = 0; i < answers.length; i++){
if(mathGiver[0][i % mathGiver[0].length] == answers[i]) count[0]++;
if(mathGiver[1][i % mathGiver[1].length] == answers[i]) count[1]++;
if(mathGiver[2][i % mathGiver[2].length] == answers[i]) count[2]++;
}
for(let j = 0; j < count.length; j++){
if(count[j] == Math.max(...count)) answer.push(j+1);
}
return answer;
}
console.log(solution1(answers));
-問題の説明
(2)問題解きと説明2
- 문제풀이
const answers = [1, 3, 2, 4, 2]
function solution2(answers) {
const answer = [];
const mathGiver1 = [1, 2, 3, 4, 5];
const mathGiver2 = [2, 1, 2, 3, 2, 4, 2, 5]
const mathGiver3 = [3, 3, 1, 1, 2, 2, 4, 4, 5, 5];
const mathGiver1Count = answers.filter((a,i)=> a === mathGiver1[i%mathGiver1.length]).length;
const mathGiver2Count = answers.filter((a,i)=> a === mathGiver2[i%mathGiver2.length]).length;
const mathGiver3Count = answers.filter((a,i)=> a === mathGiver3[i%mathGiver3.length]).length;
const max = Math.max(mathGiver1Count,mathGiver2Count,mathGiver3Count);
if (mathGiver1Count === max) answer.push(1);
if (mathGiver2Count === max) answer.push(2);
if (mathGiver3Count === max) answer.push(3);
return answer;
}
console.log(solution2(answers))
-問題の説明
(3)参考資料
Reference
この問題について([javascript-algorithm]プログラマー-シミュレーション試験), 我々は、より多くの情報をここで見つけました https://velog.io/@y_jem/자바스크립트-알고리즘-프로그래머스-모의고사-lxpbl8xeテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol