본문 바로가기

알고리즘 문제풀이

[프로그래머스] 고득점 키트 - 완전탐색1

오늘 푼 문제

 

1. 모의고사 / Lv.1 / 시간 : 21분

programmers.co.kr/learn/courses/30/lessons/42840?language=javascript

 

코딩테스트 연습 - 모의고사

수포자는 수학을 포기한 사람의 준말입니다. 수포자 삼인방은 모의고사에 수학 문제를 전부 찍으려 합니다. 수포자는 1번 문제부터 마지막 문제까지 다음과 같이 찍습니다. 1번 수포자가 찍는

programmers.co.kr

function solution(answers) {
    var answer = [];
    let bmap = {1:1,3:3,5:4,7:5};
    let cmap = {0:3,1:1,2:2,3:4,4:5};
    let temp = answers.reduce((acc,cur,i)=>{
        if(cur===i%5+1) acc[0]++;
        if(cur===bmap[i%8]) acc[1]++;
        if(i%2===0&&cur===2) acc[1]++;
        if(cur===cmap[Math.floor((i%10)/2)]) acc[2]++;
        return acc;
    },[0,0,0]);
    
    let max = Math.max(...temp);
    if(max===0) return [];

    if(temp[0]===max) answer.push(1);
    if(temp[1]===max) answer.push(2);
    if(temp[2]===max) answer.push(3);

    return answer;
}