Algorithms/- 프로그래머스
프로그래머스 - 모의고사 [자바]
자굿
2022. 1. 30. 21:20
- 문제 링크 : 모의고사
코딩테스트 연습 - 모의고사
수포자는 수학을 포기한 사람의 준말입니다. 수포자 삼인방은 모의고사에 수학 문제를 전부 찍으려 합니다. 수포자는 1번 문제부터 마지막 문제까지 다음과 같이 찍습니다. 1번 수포자가 찍는
programmers.co.kr
정답
import java.util.*;
class Solution {
public int[] solution(int[] answers) {
/*
pickArr1 1,2,3,4,5
pickArr2 2,1,2,3,2,4,2,5
pickArr3 3,3,1,1,2,2,4,4,5,5
*/
int[] pickArr1 = {1,2,3,4,5}; //5
int[] pickArr2 = {2,1,2,3,2,4,2,5}; //8
int[] pickArr3 = {3,3,1,1,2,2,4,4,5,5}; //10
int[] resultArr = new int[3];
//12345 % 5 4-4 5-5 0
int index = 0;
for(int answer : answers){
if(pickArr1[index % 5] == answer){
resultArr[0]++;
}
if(pickArr2[index % 8] == answer){
resultArr[1]++;
}
if(pickArr3[index % 10] == answer){
resultArr[2]++;
}
index++;
}
int max = -1;
for(int result : resultArr){
if(result > max){
max = result;
}
}
List<Integer> maxList = new ArrayList<>();
for(int i=0; i<resultArr.length; i++){
if(max == resultArr[i]){
maxList.add(i+1);
}
}
int[] maxPersonArr = new int[maxList.size()];
int maxPersonCount = 0;
for(int maxPerson : maxList){
maxPersonArr[maxPersonCount] = maxPerson;
maxPersonCount++;
}
Arrays.sort(maxPersonArr);
return maxPersonArr;
}
}
반응형