출처 : https://programmers.co.kr/learn/courses/30/lessons/42840

 

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

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

programmers.co.kr

 

#include <string>
#include <vector>
#include <algorithm>

using namespace std;

vector<int> solution(vector<int> answers) {
    vector<int> answer;
    vector<int> vN1 = {1, 2, 3, 4, 5};
    vector<int> vN2 = {2, 1, 2, 3, 2, 4, 2, 5};
    vector<int> vN3 = {3, 3, 1, 1, 2, 2, 4, 4, 5, 5};
    vector<int> nSum(3);
    for (int i = 0; i < answers.size(); i++) {
        if(vN1[i%5] == answers[i]){
            nSum[0]++;
        }
        if(vN2[i%8] == answers[i]){
            nSum[1]++;
        }
        if(vN3[i%10] == answers[i]){
            nSum[2]++;
        }
    }
    int nMax = *max_element(nSum.begin(), nSum.end());
    for (int i = 0; i < nSum.size(); i++) {
        if (nMax == nSum[i]){
            answer.push_back(i+1);
        }
    }
    
    return answer;
}

+ Recent posts