[백준 문제] P6588 골드바흐의 추측
[백준 문제] P6588-골드바흐의 추측
- 의문점 : 왜 내껀 시간 초과일까?
- 내 풀이 문제점 고찰 :
- 나중에….
내 풀이
# 시간 초과인 내 풀이....답은 맞자나요....백준님........
n = 1
while n != 0 :
arr = []
minu = []
n = int(input())
# n이 0이면 멈추기
if n == 0 :
break
# n보다 작은 소수 찾기
a = [False,False] + [True]*(n-1)
primes=[]
for i in range(2,n+1):
if a[i]:
primes.append(i)
for j in range(2*i, n+1, i):
a[j] = False
# x2-x1이 가장 큰 소수 찾기
for i in primes :
for j in primes :
if i+j == n :
arr.append([i,j])
minu.append(j-i)
x1 = arr[minu.index(max(minu))][0];
x2 = arr[minu.index(max(minu))][1];
print(str(n)+" = "+str(x1)+" + "+str(x2))
8
8 = 3 + 5
10
10 = 3 + 7
0
MAX = 1000000
prime = [False for _ in range(MAX+1)]
for i in range(2, MAX+1):
if i*i > MAX:
break
if prime[i] is False:
for j in range(i*i, MAX+1, i):
prime[j] = True
while True:
n = int(input())
if n is 0:
break
for i in range(2, MAX+1):
if prime[i] is False:
j = n - i
if prime[j] is False:
print(n, "=", i, "+", j)
break
8
8 = 3 + 5
0