Prime Factory

题干

比一百万大的数里找两个素数,它们每一位数字之和也必须是素数,找到最前面的两个并且连起来
python解决

import numpy as np
# 定义一个判断素数的函数
def sushu(num):
    for i in range(2,int(np.sqrt(num))+1):
        if num % i == 0:
            return 0
    return 1 
# 判断数字每一位数之和是否为素数
def sushu2(num ):
    tmp = 0
    for j in str(num):
        tmp += int(j )
    if sushu(tmp):
        return 1
    else:
        return 0

i = 1000000
res = []
while(len(res)<2):
    i += 1 
    if sushu(i) and sushu2(i ):
        res.append(i )
        
print(res )

把运行结果的两个数字连起来提交就行


运行结果

(python水平的巅峰期在19年9月初,现在写个这个都写半天老是出错。。。)

你可能感兴趣的:(Prime Factory)