티스토리 뷰
728x90
코딩테스트 연습 - 로또의 최고 순위와 최저 순위
로또 6/45(이하 '로또'로 표기)는 1부터 45까지의 숫자 중 6개를 찍어서 맞히는 대표적인 복권입니다. 아래는 로또의 순위를 정하는 방식입니다. 1 순위 당첨 내용 1 6개 번호가 모두 일치 2 5개 번호
programmers.co.kr
package programmers.level1;
import org.junit.Test;
import java.lang.reflect.Array;
import java.util.Arrays;
import java.util.HashMap;
public class P77484 {
@Test
public void 정답(){
int[] lottos = {44, 1, 0, 0, 31, 25};
int[] win_nums = {31, 10, 45, 1, 6, 19};
System.out.println(Arrays.toString(solution(lottos,win_nums)));
}
public int[] solution(int[] lottos, int[] win_nums) {
int[] answer =new int [2];
int point = 0;
int zero=0;
HashMap<Integer,Integer> map = new HashMap<>();
int rank=0;
for(int i=6;i>1;i--){
map.put(i,++rank);
}
for(int i : lottos){
if(i==0){
zero++;
continue;
}
for(int j=0;j<6;j++){
if(i==win_nums[j]){
point++;
break;
}
}
}
answer[0] = map.containsKey(point+zero)? map.get(point+zero):6;
answer[1] = map.containsKey(point)? map.get(point):6;
return answer;
}
}
'알고리즘 - Java' 카테고리의 다른 글
[프로그래머스] k 진수에서 소수 구하기 - Java (0) | 2022.04.09 |
---|---|
[프로그래머스] 다음 큰 숫자 - Java (0) | 2022.03.31 |
[Programmers] 예상 대진표 - Java (0) | 2022.03.31 |
[Programmers] 피로도 - Java (0) | 2022.03.31 |
[Programmers] 큰 수 만들기 - Java (0) | 2022.03.30 |
댓글