Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- kotlin
- 프로젝트
- 스프링
- OS
- backtracking
- baekjoon
- 네트워크
- 백준
- 백트래킹
- lambda
- 모던자바
- 프로그래머스
- programmers
- DFS
- TDD
- 자바
- 자료구조
- Brute-force
- java
- 그래프
- 코틀린
- BFS
- 알고리즘
- algorithm
- 운영체제
- Java8
- Spring
- LEVEL2
- DP
- back-end
Archives
- Today
- Total
요깨비's LAB
[프로그래머스, Java] 로또의 최고순위와 최저순위 본문
import java.util.HashMap;
import java.util.Map;
class Solution {
public int[] solution(int[] lottos, int[] win_nums) {
int[] answer = new int[2];
Map<Integer, Integer> rankMap = new HashMap<>();
rankMap.put(6,1);
rankMap.put(5,2);
rankMap.put(4,3);
rankMap.put(3,4);
rankMap.put(2,5);
rankMap.put(1,6);
int maxScore = getMaxScore(lottos, win_nums);
int minScore = getMinScore(lottos, win_nums);
answer[0] = rankMap.getOrDefault(maxScore, 6);
answer[1] = rankMap.getOrDefault(minScore, 6);
return answer;
}
public static int getMaxScore(int[] lottos, int[] win_nums) {
int score = 0;
Map<Integer, Number> winNumberMap = new HashMap<>();
for(int winNum : win_nums) {
winNumberMap.put(winNum, new Number(winNum));
}
for(int lotto : lottos) {
Number number = winNumberMap.getOrDefault(lotto, null);
if(number != null && !number.isCheck) {
number.setCheck(true);
score++;
continue;
}
if(lotto == 0) {
score++;
}
}
return score;
}
public static int getMinScore(int[] lottos, int[] win_nums) {
int score = 0;
Map<Integer, Number> winNumberMap = new HashMap<>();
for(int winNum : win_nums) {
winNumberMap.put(winNum, new Number(winNum));
}
for(int lotto : lottos) {
Number number = winNumberMap.getOrDefault(lotto, null);
if(number != null && !number.isCheck) {
number.setCheck(true);
score++;
continue;
}
if(lotto == 0) {
continue;
}
}
return score;
}
static class Number {
boolean isCheck = false;
int number = 0;
public Number(int number) {
this.number = number;
}
public void setCheck(boolean isCheck) {
this.isCheck = isCheck;
}
}
}
'알고리즘(Java) > 프로그래머스' 카테고리의 다른 글
[프로그래머스, Kotlin] 신고 결과 받기 (0) | 2022.02.19 |
---|---|
[프로그래머스, Java] 비밀지도 (0) | 2022.01.08 |
[프로그래머스, Java] 튜플 (0) | 2021.10.16 |
[프로그래머스, Java] 수식 최대화 (0) | 2021.10.15 |
[프로그래머스, Java] 자물쇠와 열쇠 (0) | 2021.09.23 |
Comments