白駿9020号:金バッハの推測
質問する
https://www.acmicpc.net/problem/9020
に近づく
コード#コード#
📌 python
import sys
input = sys.stdin.readline
CASE = int(input())
for _ in range(CASE) :
NUM = int(input())
# 소수생성
sosu = [True] * (NUM)
for num in range(2, int(NUM**0.5)+1) :
if sosu[num] :
for i in range(num*num, NUM, num) :
sosu[i] = False
standard_num = int(NUM/2)
x = [] # NUM/2 이하 소수 리스트
y = [] # NUM/2 이상 소수 리스트
for i in range(2, len(sosu)) :
if sosu[i] :
if i <= standard_num :
x.append(i)
if i == standard_num :
y.append(i)
else :
y.append(i)
x.reverse()
i = 0
j = 0
while( x[i]+y[j] != NUM ) :
if x[i]+y[j] < NUM :
j += 1
elif x[i]+y[j] > NUM :
j = 0
i += 1
print(f"{x[i]} {y[j]}")
import sys
input = sys.stdin.readline
CASE = int(input())
for _ in range(CASE) :
NUM = int(input())
# 소수생성
sosu = [True] * (NUM)
for num in range(2, int(NUM**0.5)+1) :
if sosu[num] :
for i in range(num*num, NUM, num) :
sosu[i] = False
standard_num = int(NUM/2)
x = [] # NUM/2 이하 소수 리스트
y = [] # NUM/2 이상 소수 리스트
for i in range(2, len(sosu)) :
if sosu[i] :
if i <= standard_num :
x.append(i)
if i == standard_num :
y.append(i)
else :
y.append(i)
x.reverse()
i = 0
j = 0
while( x[i]+y[j] != NUM ) :
if x[i]+y[j] < NUM :
j += 1
elif x[i]+y[j] > NUM :
j = 0
i += 1
print(f"{x[i]} {y[j]}")
Reference
この問題について(白駿9020号:金バッハの推測), 我々は、より多くの情報をここで見つけました https://velog.io/@ryong9rrr/백준-9020번-골드바흐의-추측テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol