https://school.programmers.co.kr/learn/courses/30/lessons/77484
나의 문제 풀이
1) 0이 되는 수와 맞추는 수를 각각 세어본다.
2) 1순위는 6개번호가 일치 해야 하기 때문에 1+6을 하여 7이라는 숫자를 기준으로 삼았다.
3) answer[ 0 ] 은 최고 순위, answer[ 1 ] 는 최저 순위를 기입하기 위해 다음과 같은 식을 썼다.
4) answer[ 1 ] 은 하나도 못 맞출경우 7이 나오기 때문에 7이 나오면 -1을 해줬다.
5) 그리고 1개만 맞췄을 경우도 있기 때문에 answer[ 0 ]과 answer[ 1 ]은 6으로 설정해줬다.
class Solution {
public int[] solution(int[] lottos, int[] win_nums) {
int[] answer = new int[2];
int count = 0;
int zero = 0;
for (int i = 0; i < lottos.length; i++) {
if (lottos[i] == 0) {
zero++;
}
for (int j = 0; j < win_nums.length; j++) {
if (lottos[i] == win_nums[j]) {
count++;
}
}
answer[0] = 7-(zero + count);
answer[1] = 7-(count);
if(answer[1] == 7){
answer[1] -= 1;
}
if(zero + count < 2){
answer[0] = 6;
answer[1] = 6;
}
}
return answer;
// answer[0] = 7-(Math.max(count+zero, 1));
// answer[1] = 7-(Math.max(count, 1));
}
}
'코드문제풀이 > JAVA' 카테고리의 다른 글
[자바] 체육복 (0) | 2023.08.21 |
---|---|
[자바] 옹알이 (2) (0) | 2023.08.21 |
[자바] 기사단원의 무기 (0) | 2023.08.21 |
[자바] 덧칠하기 (0) | 2023.08.21 |
[자바] 모의고사 (0) | 2023.08.21 |