[백준 / 1747] 소수&팰린드롬


날짜: 2021년 10월 27일
소요 시간: 5분 23초
카테고리: 구현
태그: gold.5, 1747, 파이썬

백준 1747 - 소수&팰린드롬

입출력 예시

예제 입력예제 출력
31101

내가 적은 코드

def palindrome(x):
    a = str(x)
    b = a[::-1]
    if a == b:
        return True
    else:
        return False

def prime(x):
    if x == 1:
        return False
    for num in range(2,int((x**0.5))+1):
        if x % num == 0:
            return False
    return True

num = int(input())

while True:
    if palindrome(num):
        if prime(num):
            print (num)
            break
    num += 1

풀이 과정

이전에 풀었던 백준 - 1990 소수인팰린드롬와 유사한 문제이어서 문제를 푸는데 보다 수월했다.

에라토스테네스의 체 판별식을 활용하여 소수임을 판별하는 prime() 함수 선언
파이썬의 문자열 처리를 통하여 팰린드롬임을 판별하는 palindrome() 함수 선언

입력된 num이 소수임과 동시에 팰린드롬을 만족할 때까지 1씩 더해가며
둘 다 만족하는 수가 나왔을 경우 그 수를 출력하고 반복문 break

리뷰

  • 확실히 이전에 푼 유형의 문제를 다시 풀 떄는 시간적인 부분에서 훨씬 수월해진다. 꾸준히 많은 문제를 풀어보자




© 2021. by hminkim