We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent 34d567a commit 571f0f4Copy full SHA for 571f0f4
week2/6588_jhuni17.py
@@ -1,20 +1,25 @@
1
#6588 골드바흐의 추측
2
+import sys
3
-def is_odd_prime(n):
4
- for i in range(3, int(n**0.5)+1, 2):
5
- if n % i ==0:
6
- return 0
7
- return 1
+def find_prime_list(n):
+ is_prime = [True] * (n + 1)
+ for i in range(2, int(n**0.5) + 1):
+ for j in range(i * i, n + 1, i):
8
+ is_prime[j] = False
9
+ return is_prime
10
+
11
+odd_prime_list = find_prime_list(1000000)
12
13
def solution(N):
14
for i in range(3, int(N/2)+1, 2):
- if is_odd_prime(i) == 1 and is_odd_prime(N-i):
- return print(f"{N} = {i} + {N-i}")
15
+ if odd_prime_list[i] and odd_prime_list[N-i]:
16
+ print(f"{N} = {i} + {N-i}")
17
+ return
18
19
print("Goldbach's conjecture is wrong.")
20
21
while True:
- N = int(input())
22
+ N = int(sys.stdin.readline())
23
if N == 0:
24
break
25
solution(N)
0 commit comments