本文整理匯總了Python中Euler.pandigital_check方法的典型用法代碼示例。如果您正苦於以下問題:Python Euler.pandigital_check方法的具體用法?Python Euler.pandigital_check怎麽用?Python Euler.pandigital_check使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類Euler
的用法示例。
在下文中一共展示了Euler.pandigital_check方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。
示例1: range
# 需要導入模塊: import Euler [as 別名]
# 或者: from Euler import pandigital_check [as 別名]
#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
project euler problem 41
n桁の數がPandigitalであるとは, 1からnまでの數を各桁に1つずつもつことである.
例えば2143は4桁のPandigital數であり, かつ素數である.
n桁のPandigitalな素數の中で最大の數を答えよ.
"""
import Euler
import time
time1 = time.time()
answer = 0
for i in range(9999999, 1000000, -1):
if Euler.pandigital_check(i) * Euler.primecheck(i):
answer = i
break
if answer == 0:
for i in range(9999, 1000, -1):
if Euler.pandigital_check(i) * Euler.primecheck(i):
answer = i
break
print(answer)
print(time.time() - time1, "seconds")
示例2: range
# 需要導入模塊: import Euler [as 別名]
# 或者: from Euler import pandigital_check [as 別名]
192を1, 2, 3で掛けてみよう.
192 × 1 = 192
192 × 2 = 384
192 × 3 = 576
積を連結することで1から9のPandigital數 192384576 が得られる.
192384576を 192と(1,2,3)の連結積と呼ぶ.
同じようにして, 9を1,2,3,4,5と掛け連結することでPandigital數918273645が得られる.
これは9と(1,2,3,4,5)との連結積である.
整數と(1,2,...,n) (n > 1) との連結積として得られる9桁のPandigital數の中で最大のものを答えよ.
"""
import time
import Euler
time1 = time.time()
lst = []
for i in range(1, 10 ** 4):
sttr = ""
for j in range(1, 10):
sttr += str(i * j)
if len(sttr) < 9:
continue
elif len(sttr) == 9 and Euler.pandigital_check(int(sttr)):
lst.append(sttr)
else:
break
print(max(lst))
print(time.time() - time1, "seconds")