📘 문제
https://programmers.co.kr/learn/courses/30/lessons/77484
💡 풀이
💻 코드
class Solution {
public int[] solution(int[] lottos, int[] win_nums) {
int[] answer = new int[2];
int zeroCount = 0;
int bestCaseCount = 0;
int worstCaseCount = 0;
for (int i = 0; i < lottos.length; i++) {
// 최고 순위일 때는 0이 win_nums에 있는 숫자와 같게끔 변경됐다고 생각할 수 // 있기 때문에 0일때도 bestCaseCount를 증가
if (lottos[i] == 0) {
zeroCount++;
bestCaseCount++;
}
for (int j = 0; j < win_nums.length; j++) {
if (lottos[i] == win_nums[j]) bestCaseCount++;
}
}
worstCaseCount = bestCaseCount - zeroCount;
answer[0] = getRank(bestCaseCount);
answer[1] = getRank(worstCaseCount);
return answer;
}
public int getRank(int n) {
switch (n) {
case 6:
return 1;
case 5:
return 2;
case 4:
return 3;
case 3:
return 4;
case 2:
return 5;
default:
return 6;
}
}
}
결과