1. ๋ฌธ์ : https://school.programmers.co.kr/learn/courses/30/lessons/138476
2. ํ์ด
ํด์ฌ๋งต์ ๋ฃ์ด์ ์ ๋ ฌ ํ ์ข ๋ฅ๋ณ ๊ฐ์๊ฐ ๋ง์ ๊ฒ ๋ถํฐ ์์์ ๋ด์์ ์นด์ดํธ ํด์ค๋ค.
3. ์ฝ๋
import java.util.*;
class Solution {
public int solution(int k, int[] tangerine) {
HashMap<Integer, Integer> hm = new HashMap<Integer, Integer>();
for(int i=0; i<tangerine.length; i++){
hm.put(tangerine[i], hm.getOrDefault(tangerine[i],0)+1);
}
List<Map.Entry<Integer, Integer>> entList = new ArrayList<Map.Entry<Integer, Integer>>(hm.entrySet());
// ๋น๊ตํจ์ Comparator๋ฅผ ์ฌ์ฉํ์ฌ ๋ด๋ฆผ ์ฐจ์์ผ๋ก ์ ๋ ฌ
Collections.sort(entList, new Comparator<Map.Entry<Integer, Integer>>() {
// compare๋ก ๊ฐ์ ๋น๊ต
public int compare(Map.Entry<Integer, Integer> obj1, Map.Entry<Integer, Integer> obj2)
{
// ๋ด๋ฆผ ์ฐจ์์ผ๋ก ์ ๋ ฌ
return obj2.getValue().compareTo(obj1.getValue());
}
});
int[] answer = new int[entList.size()];
int cnt = 0;
// ๊ฒฐ๊ณผ
for(Map.Entry<Integer, Integer> entry : entList) {
k = k-entry.getValue();
cnt++;
if(k<=0) break;
}
return cnt;
}
}
'๐ป Coding Problems Solving > Array | String | Loop' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[BOJ 2141] ์ฐ์ฒด๊ตญ (0) | 2023.06.08 |
---|---|
[ํ๋ก๊ทธ๋๋จธ์ค] LV.2 ์ฐ์ ๋ถ๋ถ ์์ด ํฉ์ ๊ฐ์ (์๋ฐ java) (0) | 2023.02.27 |
[ํ๋ก๊ทธ๋๋จธ์ค] LV.2 ์์ด ๋๋ง์๊ธฐ (์๋ฐ java) (0) | 2022.12.01 |
[ํ๋ก๊ทธ๋๋จธ์ค] LV.2 ์ซ์์ ํํ (์๋ฐ java) (0) | 2022.11.26 |
[ํ๋ก๊ทธ๋๋จธ์ค] LV.2 ์ด์ง๋ณํ๋ฐ๋ณตํ๊ธฐ (์๋ฐ java) (0) | 2022.11.26 |
์ต๊ทผ๋๊ธ