반응형
https://programmers.co.kr/learn/courses/30/lessons/42840
글쓴이의 답
개인적인 풀이 임으로
이것보다 더 좋은 알고리즘은 많음...
이렇게도 풀이하는구나.. 공유하기 위해 올림...
#include <string>
#include <vector>
using namespace std;
vector<int> solution(vector<int> answers) {
vector<int> answer;
vector<int> num1 = {1, 2, 3, 4, 5};
vector<int> num2 = {2, 1, 2, 3, 2, 4, 2, 5};
vector<int> num3 = {3, 3, 1, 1, 2, 2, 4, 4, 5, 5};
int num1_result =0;
int num2_result =0;
int num3_result =0;
int num1_count =0;
int num2_count =0;
int num3_count =0;
for (size_t i=0; i< answers.size(); i++){
if (answers[i] == num1[num1_count]){
num1_result++;
}
if (answers[i] == num2[num2_count]){
num2_result++;
}
if (answers[i] == num3[num3_count]){
num3_result++;
}
num1_count += 1;
num2_count += 1;
num3_count += 1;
if (num1_count == (int)num1.size()) {
num1_count = 0;
}
if (num2_count == (int)num2.size()) {
num2_count = 0;
}
if (num3_count == (int)num3.size()) {
num3_count = 0;
}
}
int result = 0;
if (num1_result >= result) {
result = num1_result;
}
if (num2_result >= result) {
result = num2_result;
}
if (num3_result >= result) {
result = num3_result;
}
if (num1_result == result) {
answer.push_back(1);
}
if (num2_result >= result) {
answer.push_back(2);
}
if (num3_result >= result) {
answer.push_back(3);
}
return answer;
}
꾸준히 하다보면 실력이 늘겠지..
반응형
'코딩테스트' 카테고리의 다른 글
[프로그래머스][C++] 폰켓몬 (0) | 2022.03.15 |
---|---|
[프로그래머스][C++] 체육복 (0) | 2022.03.15 |
[프로그래머스][Java] K번째수 (0) | 2022.03.15 |
[프로그래머스][C++] 완주하지 못한 선수 (0) | 2022.03.15 |
[프로그래머스][C++] 소수 만들기 (0) | 2022.03.15 |