Esempio n. 1
0
File: 038.py Progetto: zmj/Euler
from zMath import isPandigital

upperBound = 9999 

for i in range(upperBound, 0, -1):
	products = list()
	productConcatLength = 0

	n = 1
	while True:
		if productConcatLength>=9:
			break
		product = str( n * i )
		products.append(product)
		productConcatLength += len(product)
		n += 1

	if productConcatLength>9:
		continue
	
	if isPandigital(9, *products):
		print ''.join(products)
		break	
Esempio n. 2
0
File: 032.py Progetto: zmj/Euler
from zMath import isPandigital

productList = list()

#2 digit x 3 digit = 4 digit
for num1 in range(10, 100):
	for num2 in range(100, 1000):
		product = num1*num2
		if product >= 10000:
			continue

		if isPandigital(9, num1, num2, product) and product not in productList:
			#print str(num1) +" x "+str(num2)+" = "+str(product)
			productList.append(product)

#1 digit x 4 digit = 4 digit
for num1 in range(1, 10):
	for num2 in range(1000, 10000):
		product = num1*num2
		if product >= 10000:
			continue

		if isPandigital(9, num1, num2, product) and product not in productList:
			#print str(num1) + " x "+str(num2)+" = "+str(product)
			productList.append(product)

productSum = 0
for product in productList:
	productSum += product
print productSum