반응형
🔐 문제 설명
https://school.programmers.co.kr/learn/courses/30/lessons/77484
🔐 문제 분석
- 내가 가지고 있는 로또번호와 당첨번호를 비교하며, 맞은 개수와 0 개수를 각 각 카운트한다.
- 최고 순위는 0을 정답으로 보는 경우로, 맞춘 갯수와 0의 개수를 더해서 답으로 반환하고,
최저 순위는 0을 정답이 아닌 경우로 생각하여, 맞춘 갯수만 답으로 반환한다. - 6개를 다 맞춘 경우 1등이 되므로, 아래의 식처럼 표현 할 수 있다. 즉 아래의 식으로 계산하여 답을 반환한다.
* 7 - 맞춘 갯수 = 등수
🔐 문제 풀이
class Solution {
public int[] solution(int[] lottos, int[] win_nums) {
int eqCnt = 0; // 맞은 수
int zeroCnt = 0; // 0 개수
for (int i = 0; i < lottos.length; i++) {
if (lottos[i] == 0) {
zeroCnt++;
continue;
}
for (int j = 0; j < win_nums.length; j++) {
if (lottos[i] == win_nums[j]) {
eqCnt++;
break;
}
}
}
return new int[]{7 - Math.max(eqCnt + zeroCnt, 1), 7 - Math.max(eqCnt, 1)};
}
}
반응형
'Algorithm' 카테고리의 다른 글
[Java] 진법 변환(10진수 <-> N진수) (1) | 2023.08.19 |
---|---|
[프로그래머스] Lv1. 직사각형 별찍기 (0) | 2023.07.01 |
[프로그래머스] Lv1. 기사단원의 무기 (0) | 2023.07.01 |
[프로그래머스] Lv1. [1차] 다트 게임 (0) | 2023.06.29 |
[프로그래머스] Lv1. 실패율 (0) | 2023.06.25 |