|
发表于 2017-1-14 14:20:04
|
显示全部楼层
- # encoding:utf-8
- # 一个整数与1,2,3...N的乘积链接构成1-9的pandigital,寻找最大的数
- from time import time
- def euler038():
- for i in range(1, 9877):
- tmp = ''
- for t in range(1, 10):
- tmp += str(i * t)
- if len(tmp) > 9:
- break
- if len(tmp) == 9:
- if not '123456789'.strip(tmp):
- print(i, [k for k in range(1, t + 1)])
- break
- if __name__ == '__main__':
- start = time()
- euler038()
- print('cost %.6f sec' % (time() - start))
复制代码
1 [1, 2, 3, 4, 5, 6, 7, 8, 9]
9 [1, 2, 3, 4, 5]
192 [1, 2, 3]
219 [1, 2, 3]
273 [1, 2, 3]
327 [1, 2, 3]
6729 [1, 2]
6792 [1, 2]
6927 [1, 2]
7269 [1, 2]
7293 [1, 2]
7329 [1, 2]
7692 [1, 2]
7923 [1, 2]
7932 [1, 2]
9267 [1, 2]
9273 [1, 2]
9327 [1, 2]
cost 0.020014 sec |
|