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

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

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

提供一个用bisect模块的新思路

list_prime = [2,3]
def isprime(num):
    n = 0
    if num > 2:
        for i in range(2,int(num**0.5)+1):
            if num%i == 0 and i != 1:
                n = n+1
                break
    if n == 0:
        return 1
    else:
        return 0

for i in range(4,1000):
    if isprime(i):
        list_prime.append(i)

import bisect
while 1:
    try:
        a = int(input())
        place = bisect.bisect(list_prime,a//2)
        for i in range(1,place+1):
            if isprime(a - list_prime[place-i]):
                print(list_prime[place-i])
                print(a-list_prime[place-i])
                break
    except:
        break

全部评论

相关推荐

不愿透露姓名的神秘牛友
11-21 17:16
科大讯飞 算法工程师 28.0k*14.0, 百分之三十是绩效,惯例只发0.9
点赞 评论 收藏
分享
头像
11-21 11:39
四川大学 Java
是红鸢啊:忘了还没结束,还有字节的5k 违约金
点赞 评论 收藏
分享
10-18 13:01
已编辑
西安理工大学 C++
小米内推大使:建议技能还是放上面吧,hr和技术面试官第一眼想看的应该是技能点和他们岗位是否匹配
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务