您的位置:首页 > 其它

给定一个整数N,那么N的阶乘N!末尾有多少个0

2017-07-21 14:03 295 查看
    题目:给定一个整数N,那么N的阶乘N!中末尾共有多少个0?

    看到这个题目可能很常规的想法就是将N的阶乘先求出来,再计算这个数的末尾0的个数。但是一个整数也就是一个整型,一个整型的大小是4个字节,所以此时需要考虑整型N的阶乘可能会溢出,所以这种做法是有一定风险的。

    这时我们就应该考虑有没有什么办法可以不用求出该数的阶乘来计算。

    我们可以从小于N的数中相乘得到10的个数来计算,所以我们需要计算N的阶乘中有多少是2和5相乘的结果。要求出N!的末尾0的个数就要求出2和5分别的次方数,在阶乘中5出现的概率比2少,所以以5来计算

    方法1:计算阶乘中每个元素包含5的个数

    


    方法2:

    


    
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐