Example #1
0
def solution():

    i =2

    while True:
        digits = set(get_digits(i))
        j = 2
        results = []
        while j <= 6:
            product = i*j
            #print product
            if digits == set(get_digits(product)):
                results.append(product)

            else:
                break
            j+=1
        if j == 6:
            return i,results
        #print "incrementing i",i
        i+=1
Example #2
0
def solution():

    ''' Find all curious numbers which are the sum of the factorial of its digits
    '''
    solution_set = []
    i = 10
    #value = sum([factorial(j) for j in get_digits(i)])

    while True:

        value = sum([factorial(j) for j in get_digits(i)])
        if i == value:
            print i,value
            solution_set.append(i)

        if i > 1000000:
            return sum(solution_set)

        i += 1
Example #3
0
def digits_sum_square(n):
    a = [0,1,4,9,16,25,36,49,64,81]

    return sum([a[n] for n in get_digits(n)])
Example #4
0
def fact_sum(n):
    return sum([factorial(i) for i in get_digits(n)])