[Silver I] 소수&팰린드롬 - 1747
성능 요약
메모리: 19612 KB, 시간: 176 ms
분류
브루트포스 알고리즘, 수학, 정수론, 소수 판정, 에라토스테네스의 체
제출 일자
2023년 11월 1일 11:23:13
문제 설명
어떤 수와 그 수의 숫자 순서를 뒤집은 수가 일치하는 수를 팰린드롬이라 부른다. 예를 들어 79,197과 324,423 등이 팰린드롬 수이다.
어떤 수 N (1 ≤ N ≤ 1,000,000)이 주어졌을 때, N보다 크거나 같고, 소수이면서 팰린드롬인 수 중에서, 가장 작은 수를 구하는 프로그램을 작성하시오.
입력
첫째 줄에 N이 주어진다.
출력
첫째 줄에 조건을 만족하는 수를 출력한다.
import java.util.Scanner;
class Main{
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
boolean[] prime = new boolean[2000001];
prime[0] = prime[1] = true;
for(int i = 2; i <= Math.sqrt(prime.length); i++){
if(prime[i]) continue;
for(int j = i * 2; j < prime.length; j += i){
prime[j] = true;
}
}
int n = sc.nextInt();
int result = 0;
for(int i = n; i < prime.length; i++){
if(prime[i]) continue;
String num = String.valueOf(i);
result = i;
for(int j = 0; j < num.length() / 2; j++){
if(num.charAt(j) != num.charAt(num.length() - j - 1)){
result = 0;
break;
}
}
if(result != 0){
break;
}
}
System.out.println(result);
}
}
'알고리즘 - Baekjoon > Silver' 카테고리의 다른 글
[백준] 1629번 : 곱셈 Silver1(실버1) - JAVA[자바] (0) | 2023.11.16 |
---|---|
[백준] 11051번 : 이항 계수2 Silver2(실버2) - JAVA[자바] (0) | 2023.11.08 |
[백준] 12026번 : BOJ 거리 Silver1(실버1) - JAVA[자바] (0) | 2023.10.26 |
[백준] 16922번 : 로마 숫자 만들기 Silver2(실버2) - JAVA[자바] (0) | 2023.10.26 |
[백준] 13706번 : 제곱근 Silver4(실버 4) - JAVA[자바] (1) | 2023.10.26 |