문제
프로그래머스 코딩테스트 연습 - 수포자(Level 1)
https://programmers.co.kr/learn/courses/30/lessons/42840
사용 알고리즘
- 완전탐색
풀이
각 수포자의 문제 찍는 방식이 일정한 주기로 반복되므로 나머지 연산을 이용해 answer마다 정답 여부를 확인.
직접 세보고 max값 찾아 출력.
코드
#include <string>
#include <vector>
#include <algorithm>
#include <stdio.h>
using namespace std;
vector<int> solution(vector<int> answers) {
vector<int> answer;
int index=0, maxi;
int a1[5]={5,1,2,3,4};
int a2[8]={5,2,1,2,3,2,4,2};
int a3[10]={5,3,3,1,1,2,2,4,4,5};
int arr[4]={0};
for(auto i: answers){
index++;
if(a1[index%5]==i) arr[1]++;
if(a2[index%8]==i) arr[2]++;
if(a3[index%10]==i) arr[3]++;
}
maxi = max(arr[1],max(arr[2],arr[3]));
for(int i=1;i<=3;i++) if(arr[i]==maxi) answer.push_back(i);
return answer;
}
프로그래머스 첫 문제..
맨날 백준만 풀다가 여기서 처음 풀어봤는데 재밌다...
728x90
'PS > Programmers' 카테고리의 다른 글
프로그래머스 코딩테스트 연습 - 폰켓몬 (Level 1) (0) | 2021.06.20 |
---|---|
프로그래머스 코딩테스트 연습 - 체육복 (Level 1) (0) | 2021.06.19 |
프로그래머스 코딩테스트 연습 - 음양 더하기 (Level 1) (0) | 2021.06.18 |
프로그래머스 코딩테스트 연습 - 내적(Level 1) (0) | 2021.06.17 |
프로그래머스 코딩테스트 연습 - K번째 수 (Level 1) (0) | 2021.06.17 |