https://www.acmicpc.net/problem/1747
1747번: 소수&팰린드롬
어떤 수와 그 수의 숫자 순서를 뒤집은 수가 일치하는 수를 팰린드롬이라 부른다. 예를 들어 79,197과 324,423 등이 팰린드롬 수이다. 어떤 수 N (1 ≤ N ≤ 1,000,000)이 주어졌을 때, N보다 크거나 같고,
www.acmicpc.net
해석 및 팁
이 문제는 에라토스테네스의 채를 활용하여 먼저 소수를 골라낸 후 소수중에서 팰린드롬수인지 아닌지를 판별하여 n보다 큰 소수중 가장 작은 팰린드롬수를 출력하면 되는 문제입니다.
Java 코드
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
boolean[] arr = new boolean[10000001];
arr[0] = true;
arr[1] = true;
int n = sc.nextInt();
for(int i = 2; i * i <= 10000000; i++) {
for(int j = i * i; j <= 10000000; j+=i) arr[j] = true;
}
for(int i = n; i <= 10000000; i++) {
if(arr[i] == false) {
StringBuilder sb = new StringBuilder();
sb.append(i);
if(sb.toString().equals(sb.reverse().toString())) {
System.out.print(sb);
break;
}
}
}
}
}
'백준' 카테고리의 다른 글
백준 2535 아시아 정보올림피아드(Java) (0) | 2023.02.22 |
---|---|
백준 3049 다각형의 대각선(Java) (0) | 2023.02.21 |
백준 10164 격자상의 경로(Java) (0) | 2023.02.21 |
백준 2343 기타 레슨(Java) (0) | 2023.02.21 |
백준 5555 반지(Java) (0) | 2023.02.21 |