반응형
문제 링크 : https://programmers.co.kr/learn/courses/30/lessons/42840
코딩테스트 연습 - 모의고사
수포자는 수학을 포기한 사람의 준말입니다. 수포자 삼인방은 모의고사에 수학 문제를 전부 찍으려 합니다. 수포자는 1번 문제부터 마지막 문제까지 다음과 같이 찍습니다. 1번 수포자가 찍는
programmers.co.kr
문제 풀이
수포자 3인방의 찍는 방식을 미리 배열에 담아두고 answers 배열을 돌며 정답이면 3인방의 카운트 배열에 ++해주면 된다.
가장 높은 점수인 사람을 배열에 담아 리턴해주면 된다. 동점자인 경우도 포함한다.
소스 코드
#include <vector>
using namespace std;
vector<int> solution(vector<int> answers) {
int arr1[5] = {1,2,3,4,5};
int arr2[8] = {2,1,2,3,2,4,2,5};
int arr3[10] = {3,3,1,1,2,2,4,4,5,5};
int cnt[3] = { 0, };
vector<int> ret;
for(int i=0; i<answers.size(); i++){
if(arr1[i%5] == answers[i]) cnt[0]++;
if(arr2[i%8] == answers[i]) cnt[1]++;
if(arr3[i%10] == answers[i]) cnt[2]++;
}
int maxVal = cnt[0];
for(int i=1; i<3; i++){
if(maxVal < cnt[i])
maxVal = cnt[i];
}
for(int i=0; i<3; i++){
if(maxVal == cnt[i])
ret.push_back(i+1);
}
return ret;
}
반응형
'Programming Solve > 프로그래머스' 카테고리의 다른 글
프로그래머스 - 카펫 / C++ (0) | 2022.02.06 |
---|---|
프로그래머스 - 소수 찾기 / C++ (0) | 2022.02.06 |
프로그래머스 - 구명보트 / C++ (0) | 2022.02.05 |
프로그래머스 - 큰 수 만들기 / C++ (0) | 2022.02.05 |
프로그래머스 - 조이스틱 & BOJ - 고득점 / C++ (0) | 2022.02.05 |