|
发表于 2016-9-26 00:11:47
|
显示全部楼层
- from time import time
- start=time()
- zs1=['2','3','7']
- zs2=['2','3','5','7']
- zs3=[2]
- zs0=[]
- zs=[]
- def zhishu(a):
- sq=a**0.5
- if sq==int(sq):
- return False
- sq=int(sq)
- for x in zs3:
- if x>sq:
- return True
- if a/x==int(a/x):
- return False
- for i in range(3,1000000):
- if zhishu(i):
- zs3.append(i)
- for i in zs3:
- zs0.append(str(i))
- for k in zs0:
- if len(k)==2 and k[:1] in zs0 and k[-1:] in zs0:
- zs.append(int(k))
- elif len(k)==3 and k[:1] in zs0 and k[-1:] in zs0 and k[:2] in zs0 and k[-2:] in zs0:
- zs.append(int(k))
- elif len(k)==4 and k[:1] in zs0 and k[-1:] in zs0 and k[:2] in zs0 and k[-2:] in zs0 and k[:3] in zs0 and k[-3:] in zs0:
- zs.append(int(k))
- elif len(k)==5 and k[:1] in zs0 and k[-1:] in zs0 and k[:2] in zs0 and k[-2:] in zs0 and k[:3] in zs0 and k[-3:] in zs0 and k[:4] in zs0 and k[-4:] in zs0:
- zs.append(int(k))
- elif len(k)==6 and k[:1] in zs0 and k[-1:] in zs0 and k[:2] in zs0 and k[-2:] in zs0 and k[:3] in zs0 and k[-3:] in zs0 and k[:4] in zs0 and k[-4:] in zs0 and k[:5] in zs0 and k[-5:] in zs0:
- zs.append(int(k))
- print(zs)
- print(time()-start)
-
复制代码
- >>> ================================ RESTART ================================
- >>>
- [23, 37, 53, 73, 313, 317, 373, 797, 3137, 3797, 739397]
- 1369.6615242958069
- >>>
复制代码 |
评分
-
查看全部评分
|