Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
First solution in Uncategorized category for Numbers Factory by TovarischZhukov
# migrated from python 2.7
def find(lst, deph, num, delit):
if delit == 1:
delit = 9
if deph > 64:
return False
val = num % float(delit)
if num / float(delit) == 1:
lst.append(delit)
return True
if val == 0:
lst.append(delit)
return find(lst, deph+1, num / float(delit), 9)
else:
if deph == 0: return False
return find(lst, deph+1, num, delit - 1)
def checkio(num):
data=[]
for i in range(8)[::-1]:
lst = []
if find(lst, 0, num, i + 2):
data.append(lst)
print(data)
val = [int("".join(map(str, sorted(elem)))) for elem in data if elem]
return min(val) if val else 0
Dec. 7, 2015