Search

k진수에서 소수 개수 구하기

알고리즘
연습문제
플랫폼
프로그래머스
JCF
ArrayDeque
상태
해결
생성 일시
2023/12/22 08:43
최종 편집 일시
2024/01/11 10:20

문제 설명

해결과정

Solution.java

import java.util.*; class Solution { Deque<String> deque = new ArrayDeque<>(); int answer = 0; public int solution(int n, int k) { // 정수 n을 k진수로 변환 String kNumber = Integer.toString(n, k); System.out.println(kNumber); kNumberSubString(kNumber); return answer; } // 바꾼 k진수에서 0이 포함되지 않게 수를 나눈다. public void kNumberSubString(String num) { // subString을 하기 위해 체크 int start = 0; // num 배열을 돌면서 0인 문자열을 찾는다. String[] nums = num.split("0"); for(String n : nums) { if(!n.equals("")) { long cnt = Long.parseLong(n); if(isPrime(cnt)) {answer++;} } } } // n이 소수인가? public static boolean isPrime(long n) { if (n <= 1) { return false; } for (long i = 2; i * i <= n; i++) { if (n % i == 0) { return false; } } return true; } }
Java
복사