function solution(answers) {
//수포자 삼인방의 찍는 패턴 정해주고
const pattern1 = [1, 2, 3, 4, 5];
const pattern2 = [2, 1, 2, 3, 2, 4, 2, 5];
const pattern3 = [3, 3, 1, 1, 2, 2, 4, 4, 5, 5];
// 수포자들이 맞춘 카운트를 담음
const scores = [0, 0, 0];
// answers 배열의 인덱스와 같은 수포자들의 패턴 인덱스를 비교해서 맞으면 카운트
answers.forEach((answer, index) => {
if (answer === pattern1[index % pattern1.length]) scores[0]++;
if (answer === pattern2[index % pattern2.length]) scores[1]++;
if (answer === pattern3[index % pattern3.length]) scores[2]++;
});
// 가장 높은 점수를 찾음
const maxScore = Math.max(...scores);
// 가장 높은 점수를 받은 수포자의 번호를 배열에 담아 반환
return scores
.map((score, index) => (score === maxScore ? index + 1 : null))
.filter((num) => num !== null);
}
'JavaScript' 카테고리의 다른 글
[프로그래머스 Lv.1] 소수 찾기 javascript (0) | 2024.12.03 |
---|---|
[프로그래머스 Lv.1] 과일장수 javascript (0) | 2024.12.02 |
[프로그래머스 Lv.1] 기사단원의 무기 javascript (0) | 2024.11.27 |
[프로그래머스 Lv.1] 2016년 (0) | 2024.11.25 |
[프로그래머스 Lv.1] 폰켓몬 (0) | 2024.11.22 |