Notice
														
												
											
												
												
													Recent Posts
													
											
												
												
													Recent Comments
													
											
												
												
													Link
													
											
									| 일 | 월 | 화 | 수 | 목 | 금 | 토 | 
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | 3 | 4 | 5 | 6 | 7 | 8 | 
| 9 | 10 | 11 | 12 | 13 | 14 | 15 | 
| 16 | 17 | 18 | 19 | 20 | 21 | 22 | 
| 23 | 24 | 25 | 26 | 27 | 28 | 29 | 
| 30 | 
													Tags
													
											
												
												- 스택
 - 백준 N과 M 자바
 - lv0
 - 프로그래머스 풀이
 - 큐
 - SWEA
 - index of
 - Stack
 - 프로그래머스 자바
 - java
 - 스프링부트 도커로 배포
 - 스프링부트 도커 배포
 - Programmers
 - Queue
 - 프로그래머스 문자열 정렬
 - StringTokenizer
 - 클라이언트
 - COS Pro
 - 버퍼
 - lv2
 - 오름차순 정렬
 - 백준
 - 자바
 - 스프링부트 도커
 - 이진수 변환
 - 알고리즘
 - 프로그래머스
 - 삼각형의 완성조건
 - Lv1
 - 문자열
 
													Archives
													
											
												
												- Today
 
- Total
 
mun dev
[백준] 4134 다음 소수 자바(Java) 본문
문제설명
정수 n(0 ≤ n ≤ 4*109)가 주어졌을 때, n보다 크거나 같은 소수 중 가장 작은 소수 찾는 프로그램을 작성하시오.
입력
첫째 줄에 테스트 케이스의 개수가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있고, 정수 n이 주어진다.
출력
각각의 테스트 케이스에 대해서 n보다 크거나 같은 소수 중 가장 작은 소수를 한 줄에 하나씩 출력한다.
통과한 코드 ✅
계속해서 다른 풀이로 풀다가 시간초과가 나서 풀이를 참고하게 되었다.
Bingint의 메서드 중 isProablePrime()과 nextProablePrime()에 대해 알게 되었다.
- isProbablePrime() : 현재 값이 소수인지 판단
 - nextProbablePrime() : 다음 소수 값을 반환
 
각 메서드를 사용하니 빠른 시간내에 통과가 될 수 있었다.
import java.io.*;
import java.math.BigInteger;
public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        long n = Long.parseLong(br.readLine());
        for (int i = 0; i < n; i++) {
            long num=Long.parseLong(br.readLine());
            BigInteger bigint=new BigInteger(String.valueOf(num));
            if(bigint.isProbablePrime(10)) // 소수가 아닌 경우 false 리턴
                System.out.println(bigint);
            else System.out.println(bigint.nextProbablePrime()); // 다음 소수 값 반환
        }
    }
}
'알고리즘 > 백준' 카테고리의 다른 글
| [백준] 2941 크로아티아 알파벳 자바(Java) (0) | 2023.05.24 | 
|---|---|
| [백준] 10814 나이순 정렬 자바(Java) (0) | 2023.05.24 | 
| [백준] 1037 약수 자바(Java) (0) | 2023.05.22 | 
| [백준] 13909 창문닫기 자바(Java) (0) | 2023.05.21 | 
| [백준] 19532 수학은 비대면강의입니다 자바(Java) (0) | 2023.05.19 |