[アルゴリズム]プログラマー-シミュレーション試験


問題の説明
最初の問題から最後の問題までの正解が順番に並んでいる場合は、最も多くの質問に答えた人が誰なのか、答えを並べて返すように解答関数を書いてください.
せいげんじょうけん
試験には最大10000問が含まれている.
質問の答えは1 2 3 4 5のうちの1つです.
点数が一番高い人が何人かいる場合は、戻った値を昇順に並べてください.
解答方法
1.countCorrectという関数を構築し、1、2、3人の学生の点数を求める.
2.max変数に1,2,3名の学生の点数の中の最高点を加える
3.得点が一番高い学生をスマートに並べて返す.
function solution(answers) {
    let smart=[];
    const first =  [1,2,3,4,5];
    const second = [2,1,2,3,2,4,2,5];
    const third =  [3,3,1,1,2,2,4,4,5,5];
    
    const aResult = countCorrect(first);
    const bResult = countCorrect(second);
    const cResult = countCorrect(third);

    const max = Math.max(aResult, bResult,cResult)
    
    if(max===aResult) smart.push(1)
    if(max===bResult) smart.push(2)
    if(max===cResult) smart.push(3)


    function countCorrect(arr){
        let count=0;
        for(let i = 0; i < answers.length; i++){
            if(answers[i] === arr[i % (arr.length)]){
               count++;
            }
       }
       return count; 
        
    }
    
    return smart;
}