## 嵇爾的吐槽

#没事画轮子的嵇尔不定期的(W)碎(E)碎(B)念(B)和(L)吐(O)槽(G)

Problem 38 Pandigital multiples 2016-10-19 10:02:00

Take the number 192 and multiply it by each of 1, 2, and 3:

By concatenating each product we get the 1 to 9 pandigital, 192384576. We will call 192384576 the concatenated product of 192 and (1,2,3)

The same can be achieved by starting with 9 and multiplying by 1, 2, 3, 4, and 5, giving the pandigital, 918273645, which is the concatenated product of 9 and (1,2,3,4,5).

What is the largest 1 to 9 pandigital 9-digit number that can be formed as the concatenated product of an integer with (1,2, … , n) where n > 1?

### 全数字的倍数

numbers = []
result_number = 0
result_result = 0

def check(number):
str_number = str(number)
if '0' in str_number:
return False
for s in str_number:
if str_number.count(s) > 1:
return False
return True

for i in reversed(range(1, 9876)):
if check(i):
numbers.append(i)

for i in numbers:
result = ''
for n in range(1, 5):
result += str(i * n)
if not check(eval(result)):
break
if len(result) >= 9:
if eval(result) > result_result:
result_result = eval(result)
result_number = i
for j in range(1, n + 1):
print "%s * %s = %s" % (i, j, i * j)
print
break

print result_number, result_result