public int[] solution(int[] lottos, int[] win_nums) {
int[] answer = {0,0};
int count = 7;
ArrayList<Integer> wn = new ArrayList<>();
for(int x : win_nums) {
wn.add(x);
}
//best
for(int x : lottos) {
if(wn.contains(x) || x == 0) {
count--;
}
}
if(count>6) count--;
answer[0] = count;
count = 7;
//worst
for(int x : lottos) {
if(wn.contains(x)) {
count--;
}
}
if(count>6) count--;
answer[1] = count;
return answer;
}
당첨번호를 로또번호와 쉽게 비교하기위해 wn에 담았다.
그리고 최고등수와 최저등수를 나눠서 비교했는데,
최고등수일땐, 당첨번호 또는 0을 만났을때 count가 1 감소하게 했고,
최저등수일땐, 당첨번호을 만났을때만 count가 1 감소하게 했다.
그리고 내 로또번호가 전부 틀릴경우 또는 전부 0일경우 count가 7이 나올수 있기때문에, 만약 count가 7이라면 answer에는 6을 담게했다.
나올수있는 극단의 경우까지 생각해보고 예외 처리를 잘하도록 노력하자!