Notice
Recent Posts
Recent Comments
Link
개발 무지렁이
[문제풀이] Level1 모의고사 본문
모의고사
🪅 keyPoint: List<Integer> -> Integer[]로 변환할 수 있느냐
🪅 keyPoint: Integer[] -> int[]로 변환할 수 있느냐

⚠️ List<Integer>를 Integer배열로 변환:
Integer[] arrWrapper = list.toArray(new Integer[0]);
⚠️ Integer배열을 int배열로 변환:
int[] arr = Arrays.stream(arrWrapper).mapToInt(Integer::intValue).toArray();
Integer[] arrWrapper = list.toArray(new Integer[0]);
⚠️ Integer배열을 int배열로 변환:
int[] arr = Arrays.stream(arrWrapper).mapToInt(Integer::intValue).toArray();
import java.util.*;
class Solution {
public int[] solution(int[] answers) {
int[] answer = {};
int[] firstPattern = {1, 2, 3, 4, 5};
int[] secondPattern = {2, 1, 2, 3, 2, 4, 2, 5};
int[] thirdPattern = {3, 3, 1, 1, 2, 2, 4, 4, 5, 5};
int[] answerCnts = {0, 0, 0, 0};
List<Integer> idxList = new ArrayList<>();
// 완전탐색, 하나하나 비교하여 count
for(int i = 0; i < answers.length; i++) {
int a = answers[i];
if(a == firstPattern[i%5]) {
answerCnts[1]++;
}
if(a == secondPattern[i%8]) {
answerCnts[2]++;
}
if(a == thirdPattern[i%10]) {
answerCnts[3]++;
}
}
// count 최댓값 찾기
int maxIdx = 0;
int maxCnt = 0;
for(int i = 1; i < answerCnts.length; i++) {
if(maxCnt < answerCnts[i]) {
maxIdx = i;
maxCnt = answerCnts[i];
}
}
// 최댓값과 같은 인덱스를 idxList에 add
for(int i = 1; i < answerCnts.length; i++) {
if(maxCnt == answerCnts[i]) {
idxList.add(i);
}
}
// List<Integer> -> Integer[], Integer[] -> int[]
Integer[] idxArray = idxList.toArray(new Integer[0]);
answer = Arrays.stream(idxArray).mapToInt(Integer::intValue).toArray();
return answer;
}
}
'코딩 테스트 > 문제풀이' 카테고리의 다른 글
[문제풀이] Level2 타겟넘버 (0) | 2023.02.24 |
---|---|
[문제풀이] Level2 카펫 (0) | 2023.02.23 |
[문제풀이] Level2 모음사전 (1) | 2022.12.30 |
[문제풀이] Level2 피로도 (0) | 2022.12.28 |
[문제풀이] Level2 소수찾기 (0) | 2022.12.25 |
Comments