题解 | #查找组成一个偶数最接近的两个素数#

查找组成一个偶数最接近的两个素数

https://www.nowcoder.com/practice/f8538f9ae3f1484fb137789dec6eedb9

import math
import sys
a=int(input())
if a==4:
    print(*[2,2],sep='\n')
    sys.exit()
list1=[]
listupper=[]
list2=[]
listlower=[]
#从目标数的一半开始找素数
b=int(a/2)
#判定素数
#上行
for i in range(b,a+1):
    c=math.ceil(i**0.5)
    for j in range(1,c+1):
        if i%j==0:
            list1.append(j)
    if len(list1)==1:
        listupper.append(i)
        if i*2==a:
            print(*[i,i],sep='\n')
            sys.exit()
    list1=[]
#下行
for k in range(1,b):
    c=math.ceil(k**0.5)
    for j in range(1,c+1):
        if k%j==0:
            list2.append(j)
    if len(list2)==1:
        listlower.append(k)
    list2=[]
#找最小差值的素数组合
for i in listupper:
    for j in listlower[::-1]:
        if i+j==a:
            print(*[j,i],sep='\n')
            sys.exit()

全部评论

相关推荐

02-16 01:39
南昌大学 Java
重剑Ds:感觉不太可能 后端都减飞了 根本不缺人
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务