0. 사용 함수
- 없음
1. 문제 내용
- 설명
수포자는 각자의 방식대로 수학 모의고사의 정답을 찍는데
1번 수포자가 찍는 방식: 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, ...
2번 수포자가 찍는 방식: 2, 1, 2, 3, 2, 4, 2, 5, 2, 1, 2, 3, 2, 4, 2, 5, ...
3번 수포자가 찍는 방식: 3, 3, 1, 1, 2, 2, 4, 4, 5, 5, 3, 3, 1, 1, 2, 2, 4, 4, 5, 5, ...
정답이 주어졌을 때, 1번 2번 3번 수포자 중에 가장 많은 문제를 맞힌 사람이 누구인지 배열에 담는 문제
- 제한 사항
시험은 최대 10,000 문제로 구성되어있습니다.
문제의 정답은 1, 2, 3, 4, 5중 하나입니다.
가장 높은 점수를 받은 사람이 여럿일 경우, return하는 값을 오름차순 정렬해주세요.
2. 문제 풀이
class Solution {
public int[] solution(int[] answers) {
int[] supoza1 = {1,2,3,4,5};
int[] supoza2 = {2,1,2,3,2,4,2,5};
int[] supoza3 = {3,3,1,1,2,2,4,4,5,5};
int temp1 = 0;
int temp2 = 0;
int temp3 = 0;
for(int i=0; i < answers.length; i++){
System.out.println(supoza3[i%supoza3.length]);
if( answers[i] == supoza1[i%supoza1.length]){
temp1++;
}
if(answers[i] == supoza2[i%supoza2.length]){
temp2++;
}
if(answers[i] == supoza3[i%supoza3.length]){
temp3++;
}
}
int[] answer = selectBig(temp1,temp2,temp3);
return answer;
}
public int[] selectBig(int a,int b,int c){
if(a > b){
if(c > a){
return new int[] {3};
} else if (a > c){
return new int[] {1};
} else{
return new int[] {1,3};
}
} else if (a < b){
if(c > b){
return new int[] {3};
} else if (b > c){
return new int[] {2};
} else{
return new int[] {2,3};
}
} else {
if(c > a){
return new int[] {3};
} else if(a > c){
return new int[] {1,2};
} else{
return new int[] {1,2,3};
}
}
}
}
3. 채점 결과
- 정확성 테스트
테스트 1 〉 | 통과 (0.40ms, 77.4MB) |
테스트 2 〉 | 통과 (0.18ms, 72.7MB) |
테스트 3 〉 | 통과 (0.16ms, 72MB) |
테스트 4 〉 | 통과 (0.15ms, 77.3MB) |
테스트 5 〉 | 통과 (1.32ms, 71.4MB) |
테스트 6 〉 | 통과 (1.71ms, 76.8MB) |
테스트 7 〉 | 통과 (18.63ms, 83.8MB) |
테스트 8 〉 | 통과 (10.01ms, 74.7MB) |
테스트 9 〉 | 통과 (34.94ms, 84.7MB) |
테스트 10 〉 | 통과 (17.33ms, 77.7MB) |
테스트 11 〉 | 통과 (28.80ms, 90.4MB) |
테스트 12 〉 | 통과 (23.45ms, 81.5MB) |
테스트 13 〉 | 통과 (6.22ms, 76.9MB) |
테스트 14 〉 | 통과 (26.09ms, 91.3MB) |
ㅎㅎ.. 풀다가 int배열에 담는 과정에 에러가 하도 나서
나중에 귀찮아져가지고 막코딩도 좀 했다..
그 덕분에 그래도 빨리 풀었다,,
그래서인지 정확도 테스트에서 시간이 꽤 오래 걸린다..
'프로그래머스 > JAVA' 카테고리의 다른 글
008. 폰켓몬[JAVA] (0) | 2022.05.22 |
---|---|
007. 체육복[JAVA] (0) | 2022.05.21 |
004. 소수 만들기[JAVA] (0) | 2021.12.23 |
002. [카카오 인턴] 키패드 누르기[JAVA] (0) | 2021.12.18 |
001. 로또의 최고 순위와 최저 순위[JAVA] (0) | 2021.12.13 |