문제
문제 풀이
n 값을 k진수로 변환했을 때 진수값에서 0기준으로 문자열을 나누고 나온 배열 값을 하나씩 비교했을 때 소수의 갯수를 세어서 반환해주면 되는 문제이다.
나의 답안
public static int solution(int n, int k) {
int answer = 0;
String[] split = Integer.toString(n, k).split("0");
for(String str : split){
if ("".equals(str) || "1".equals(str)) continue;
long num = Long.parseLong(str);
boolean flag = true;
for (long i = 2; i <= Math.sqrt(num) ; i++) {
if (num % i == 0) flag = false;
}
if (flag) answer++;
}
return answer;
}
'Programmers 문제풀이 > Lv.2' 카테고리의 다른 글
할인 행사 (0) | 2023.04.03 |
---|---|
피로도 (0) | 2023.04.03 |
전화번호 목록 (0) | 2023.04.03 |
타겟 넘버 (0) | 2023.04.03 |
[1차] 뉴스 클러스터링 (0) | 2023.04.03 |