728x90
반응형
https://www.acmicpc.net/problem/1747
문제
어떤 수와 그 수의 숫자 순서를 뒤집은 수가 일치하는 수를 팰린드롬이라 부른다. 예를 들어 79,197과 324,423 등이 팰린드롬 수이다.
어떤 수 N (1 ≤ N ≤ 1,000,000)이 주어졌을 때, N보다 크거나 같고, 소수이면서 팰린드롬인 수 중에서, 가장 작은 수를 구하는 프로그램을 작성하시오.
입력
첫째 줄에 N이 주어진다.
출력
첫째 줄에 조건을 만족하는 수를 출력한다.
풀이
Code
import sys
input = sys.stdin.readline
# 4. check 재귀 함수 선언
def check(num) :
# 4-1. 소수 여부 판별
for i in range(2, int(num**0.5)+1) :
if num % i == 0 : return False
# 4-2. 팰린드롬 여부 판별
return True if str(num) == str(num)[::-1] else False
n = int(input())
# 1. n=1일 경우 처리
if n == 1 : n += 1
# 2.
while True :
# 3. check 재귀함수 실행
if check(n) :
print(n)
break
n += 1
728x90
반응형
'Coding Test > Baekjoon' 카테고리의 다른 글
[Python/BOJ] 1461. 도서관 (0) | 2023.06.26 |
---|---|
[Python/BOJ] 13164. 행복 유치원 (0) | 2023.06.24 |
[Python/BOJ] 1520. 내리막 길 (0) | 2023.06.19 |
[Python/BOJ] 1495. 기타리스트 (0) | 2023.06.18 |
[Python/BOJ] 16234. 인구 이동 (0) | 2023.06.16 |