020. 阶乘各位数的和(factorial digit sum)

\(n!\)等于\(n\times(n-1)\times(n-2)\cdots\times3\times2\times1\),例如\(10!=10\times9\times8\cdots\times2\times1=3628800\),并且其各位数的和为\(3+6+0+8+8+0+0=27\),求\(100!\)各位数之和。

分析:这道题没有什么可深入分析的地方,只需要直接直接求出\(100!\),转化为字符串得到各位数,并计算其各位数之和即可。

# time cost = 27.2 µs ± 149 ns

from math import factorial as fac

def main():
    ans = sum(map(int,str(fac(100))))
    return ans