[프로그래머스/JAVA] 로또의 최고 순위와 최저 순위
문제 링크
https://programmers.co.kr/learn/courses/30/lessons/77484
문제
해결 과정
- 우선 0의 개수를 센다. 동시에 lottos 배열과 win_nums배열에 같은 값이 있는지 확인한다.
- lottos와 win_nums에 중복되는 숫자는 없기때문에 같은 값이 있는지 확인만 하면 됨
최종 코드
import java.util.*;
public class Solution {
public int[] solution(int[] lottos, int[] win_nums) {
int zero_count = 0;
int check = 0;
for (int l : lottos) {
if (l == 0) zero_count++;
else {
for (int w : win_nums) {
if (l == w) {
check++;
break;
}
}
}
}
int min = check;
int max = check + zero_count;
int[] answer = {Math.min(7-max, 6), Math.min(7-min, 6)};
return answer;
}
}
다른 코드
- answer을 계산할 때 switch를 사용한 경우 존재
public class Solution {
public int[] solution(int[] lottos, int[] win_nums) {
int zero_count = 0;
int check = 0;
for (int l : lottos) {
if (l == 0) zero_count++;
else {
for (int w : win_nums) {
if (l == w) {
check++;
break;
}
}
}
}
int min = check;
int max = check + zero_count;
int[] answer = {getGrade(max), getGrade(min)};
return answer;
}
public int getGrade(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;
}
}
}
Author And Source
이 문제에 관하여([프로그래머스/JAVA] 로또의 최고 순위와 최저 순위), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@gyyoon4u/프로그래머스JAVA-로또의-최고-순위와-최저-순위저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)