프로그래머스(자바)
귤 고르기 → getOrDefault()★★ + 요소 개수 세기 + 내림차순★
나의 풀이 import java.util.*; class Solution { public int solution(int k, int[] tangerine) { int answer = 0; HashMap hm = new HashMap(); for(int key: tangerine){ hm.put(key, hm.getOrDefault(key, 0)+1); } Object[] values = hm.values().toArray(); Arrays.sort(values, Collections.reverseOrder()); int kind=1; int sum=(int)values[0]; for(int i=1; i=k){ return kind; } else{ sum+=(int)values[i]; kind+=1; } ..
k진수에서 소수 개수 구하기→10진수를 n진법의 문자열+StringBuilder()+소수판별(제곱근, long타입)
class Solution { //n을 k진법으로 나타낸 문자열 반환 //String객체를 매번 생성하는 것이 아니라 StringBuilder객체를 한번만 생성!! public String conv(int n, int k) { StringBuilder sb = new StringBuilder(); while (n > 0) { sb.append(n % k); n = (int) Math.floor(n / k); } return sb.reverse().toString(); } //소수인지 판별 public boolean isPrime(long x) { if (x == 1) { return false; } for (int i = 2; i < (int) (Math.sqrt(x)) + 1; i++) { if (x ..
전화번호 목록→ String문자열의 정렬 sort()의 개념★★
나의 풀이 import java.util.*; class Solution { public boolean solution(String[] phone_book) { boolean answer = true; Arrays.sort(phone_book); for(int i=0; i
타켓넘버→ 지역변수는 인스턴스변수★
나의 풀이 class Solution { public static int solution(int[] numbers, int target) { return DFS(numbers,0, 0, target, 0); } public static int DFS(int[] numbers, int L, int sum, int target, int cnt) { if (L == numbers.length) { if (sum == target) { cnt += 1; return cnt; } } else { cnt = DFS(numbers,L+1, sum-numbers[L], target, cnt); cnt = DFS(numbers, L+1, sum+numbers[L], target, cnt); } return cnt; } ..