문제 링크
https://www.acmicpc.net/problem/6588
소수를 판별하는 함수는 저번 1929번 문제의 ‘에라토스테네스의 체’ 를 그대로 가져왔다.
b = number - a를 하고 에라토스테네스의 체 방식을 사용하여 a와 b가 소수인지 판별하였다.
정답 코드
import sys
def isPrime(num):
if num==1:
return False
else:
for i in range(2, int(num**0.5)+1):
if num % i == 0:
return False
return True
def goldbach(num):
while True:
for a in range(1,number):
b = number - a
if isPrime(a) and isPrime(b):
print(f"{number} = {a} + {b}")
return False
print("Goldbach's conjecture is wrong.")
return False
while True:
number = int(sys.stdin.readline())
if number == 0:
break
else:
goldbach(number)
728x90
'파이썬 알고리즘 문제 풀이' 카테고리의 다른 글
Baekjoon Online Judge 10872번 파이썬 (0) | 2022.07.26 |
---|---|
Baekjoon Online Judge 11653번 파이썬 (0) | 2022.07.22 |
Baekjoon Online Judge 1929번 파이썬 (0) | 2022.07.22 |
Baekjoon Online Judge 1978번 파이썬 (0) | 2022.07.18 |
Baekjoon Online Judge 11576번 파이썬 (0) | 2022.07.18 |