728x90
반응형
문제 : 귤 고르기
풀이 방법
해쉬맵으로 귤 종류가 몇개 있는지 분류하고
내림차순으로 정렬하는 리스트를 만든다
그리고 개수만큼 맞는지 확인
소스 코드
import java.util.*;
class Solution {
public int solution(int k, int[] tangerine) {
int answer = 0;
LinkedHashMap<Integer, Integer> map = new LinkedHashMap<>();
for (int i:tangerine) {
if(map.containsKey(i)) {
map.put(i, map.get(i)+1);
} else {
map.put(i, 1);
}
}
List<Map.Entry<Integer, Integer>> entryList = new LinkedList<>(map.entrySet());
entryList.sort(Map.Entry.<Integer, Integer>comparingByValue().reversed());
for(Map.Entry<Integer, Integer> m : entryList){
answer += 1;
k -= m.getValue();
if(k <= 0) break;
}
return answer;
}
}
/*
종류별 개수를 배열로 입력
내림차순 정렬
k개 만큼 위에서부터 맞는지 확인?
*/
728x90
반응형
'코딩 테스트 > 프로그래머스' 카테고리의 다른 글
[프로그래머스 Level 2, Java] 삼각 달팽이 (0) | 2023.01.15 |
---|---|
[프로그래머스 Level 2, Java] 이진 변환 반복하기 (0) | 2023.01.15 |
[프로그래머스 Level 0, Python3] 문자열 밀기 (0) | 2022.11.03 |
프로그래머스 PCCE 모의고사 1회 문제 코드 정답 풀이 (0) | 2022.09.17 |
[프로그래머스 Level 1, C] 수박수박수박수박수박수? (0) | 2022.08.10 |