하루한줄 코딩일기
[인프런 - 파이썬 알고리즘 문제풀이] 2.8 뒤집은 소수 본문
섹션 2.8 뒤집은 소수
👊 내 문제 풀이
1) reverse() 함수
숫자를 문자열로 변환한 후 문자열 슬라이싱을 이용해 문자열을 뒤집고, 다시 int 타입으로 변환하여 return 한다. 뒤집은 수가 0으로 시작할 경우, str -> int 변환 과정에서 자동으로 0이 소거되기 때문에 따로 처리해줄 필요는 없다.
2) isPrime() 함수
숫자 x가 1이면 바로 False를 반환하고, 1이 아닐 경우 2 이상 x 미만의 범위에 약수가 존재하는 지 확인한다. 1과 자기 자신이 아닌 또 다른 약수가 존재하면 소수가 아니므로 False 반환한다. 모두 해당 사항이 없을 경우 True를 반환한다.
n=int(input())
arr = list(map(int, input().split()))
def reverse(x):
return int(str(x)[::-1])
def isPrime(x):
if x==1:
return False
for i in range (2, x):
if x%i==0:
return False
return True
for i in range(n):
arr[i] = reverse(arr[i])
if isPrime(arr[i]):
print(arr[i], end=' ')
채점 결과
💡 강의 해답
n=int(input())
a=list(map(int, input().split()))
def reverse(x):
res=0
while x>0:
t=x%10
res=res*10+t
x=x//10
return res
def isPrime(x):
if x==1:
return False
for i in range(2, x):
if x%i==0:
return False
return True
for x in a:
tmp=reverse(x)
if isPrime(tmp):
print(tmp, end=' ')
'Algorithm' 카테고리의 다른 글
[프로그래머스/2021 KAKAO BLIND RECRUITMENT] 신규 아이디 추천(LV.1) - 파이썬(Python) (0) | 2022.02.06 |
---|---|
[프로그래머스] 모의고사(LV.1) - 파이썬(Python) (0) | 2022.02.05 |
[프로그래머스/2019 KAKAO BLIND RECRUITMENT] 오픈채팅방(LV.2) - 파이썬(Python) (0) | 2022.02.03 |
[프로그래머스/2022 KAKAO BLIND RECRUITMENT] 신고 결과 받기(LV.1) - 파이썬(Python) (0) | 2022.02.02 |
[프로그래머스] 음양 더하기(LV.1) - 파이썬(Python) (0) | 2022.02.01 |
Comments