n! means n (n
1)
...
3
2
1
For example, 10! = 10 9
...
3
2
1 = 3628800,
and the sum of the digits in the number 10! is 3 + 6 + 2 + 8 + 8 + 0 + 0 = 27.
Find the sum of the digits in the number 100!
我的代码:
def factorial(num):
if num==1:
return num
else:
return factorial(num-1)*num
def count(num):
if num<10:
return num
else:
sha,yu=divmod(num,10)
return yu+count(sha)
print count(factorial(100))
结果为:
648
别人的代码:
reduce(lambda x, y: x + y, [int(i) for i in str(reduce(lambda x, y: x * y, range(1, 100)))])
只能说 Nice了