[알각코] 인프런 2-8 뒤집은 소수

뒤집은 소수

문제 정보는 인프런의 파이썬 알고리즘 문제풀이 코딩테스트에 있습니다!

문제풀이

내가 푼 문제

n = int(input())
a = list(map(int, input().split()))
reversed_a = []

def reverse(x):
  return x[::-1]

def isPrime(x):
  import math
  if x<2: return False
  for i in range(2,int(math.sqrt(x))+1):
      if x%i==0: return False
  return True
for el in a:
  if (isPrime(reverse(el))):
    print(reverse(el), end=' ')
n = int(input())
a = list(map(int, input().split()))
def reverse(x):
  res = 0
  while x > 0:
    # n의 자리 수 나머지
    t = x%10
    # res는 전 res*10에 나머지 더하기
    res = res*10+t
    # 기존 수에서 10 나눈 몫
    x = x//10
  return res

def isPrime(x):
  if x == 1:
    return False
  # 해당 숫자의 절반까지 돌기
  for i in range(2, x //2 + 1):
    if x % i == 0:
      return False
    else:
      return True

for x in a:
  tmp = reverse(x)
  if (isPrime(tmp)):
    print(tmp, end=' ')

Reference