問題
n × (n - 1) × ... × 3 × 2 × 1 を n! と表す.
例えば, 10! = 10 × 9 × ... × 3 × 2 × 1 = 3628800 となる.
この数の各桁の合計は 3 + 6 + 2 + 8 + 8 + 0 + 0 = 27 である.
では, 100! の各桁の数字の和を求めよ.
http://odz.sakura.ne.jp/projecteuler/index.php?cmd=read&page=Problem%2020
回答
map()の練習
def main():
n = 1
for i in range(1,101): n*=i
ans = sum(map(int, str(n)))
print ans
main()
2.6以降ならば階乗は以下で求められる模様。
import math
math.factorial(100)