#include <string>
#include <vector>
using namespace std;
int supoja_1[] = {1, 2, 3, 4, 5};
int supoja_2[] = {2, 1, 2, 3, 2, 4, 2, 5};
int supoja_3[] = {3, 3, 1, 1, 2, 2, 4, 4, 5, 5};
//1번 수포자 패턴 : 1, 2, 3, 4, 5
//2번 수포자 패턴 : 2, 1, 2, 3, 2, 4, 2, 5
//3번 수포자 패턴 : 3, 3, 1, 1, 2, 2, 4, 4, 5, 5
vector<int> solution(vector<int> answers) {
vector<int> answer;
//인원별 정답 갯수 변수
int ans_1 = 0, ans_2 = 0, ans_3 = 0;
//현재 문제번호 변수
int cur_num = 0;
//문제 완전 탐색
for(int cur_num = 0; cur_num < answers.size(); cur_num++) {
int ans = answers[cur_num];
if(supoja_1[cur_num%5] == ans) ans_1++;
if(supoja_2[cur_num%8] == ans) ans_2++;
if(supoja_3[cur_num%10] == ans) ans_3++;
}
//최대 맞은 수 찾기
int biggest = ans_1;
if(biggest < ans_2) biggest = ans_2;
if(biggest < ans_3) biggest = ans_3;
//최대 맞은 수와 같은 인원 정답에 집어넣기
if(biggest == ans_1) answer.push_back(1);
if(biggest == ans_2) answer.push_back(2);
if(biggest == ans_3) answer.push_back(3);
return answer;
}
'CodingTest Practice > Programmers' 카테고리의 다른 글
프로그래머스 : 없는 숫자 더하기 (C++, Lv.1) (0) | 2021.12.30 |
---|---|
프로그래머스 : 신규 아이디 추천 (C++, Lv.1) (0) | 2021.12.30 |
프로그래머스 : 문자열 다루기 기본 (C++) (0) | 2021.12.30 |
프로그래머스 : 로또의 최고 순위와 최저 순위 (C++, Lv.1) (0) | 2021.12.30 |
프로그래머스 : 기능개발 (C++) (0) | 2021.10.20 |