728x90
수포자 3명이 답을 적는 방식을 배열에 미리 저장해두었다. 이후, reduce로 맞았는지 틀렸는지를 계산해 가며 총 몇개 맞췄는지에 대한 저보를 저장해두었다.
마지막으로, 최대값들의 idx값들을 저장한 배열을 return해주었다.
function solution(answers) {
const ary = [[1,2,3,4,5],[2,1,2,3,2,4,2,5],[3,3,1,1,2,2,4,4,5,5]]
const cntLst = answers.reduce((a,c,idx) => [ ...new Array(3) ].map((_,i) => c === ary[i][idx%ary[i].length] ? a[i]+1 : a[i]) ,[0,0,0]);
const ret = []
for (let i = 0 ; i< 3 ; i++) if (cntLst[i]===Math.max(...cntLst)) ret.push(i+1)
return ret
}
728x90
'FrontEnd > 프로그래머스' 카테고리의 다른 글
[JS] 완주하지 못한 선수 (0) | 2023.04.28 |
---|---|
[JS] K번째 수 (0) | 2023.04.27 |
[JS] 체육복 (0) | 2023.04.25 |
[JS] 실패율 (0) | 2023.04.24 |
[JS] 크레인 인형뽑기 (1) | 2023.04.23 |