题目链接:阶乘(factorial)
问题描述: 1! 2! 3! …n! 阶乘相乘的末尾零的个数
输入描述:
输入数据共一行,一个正整数n,意义如“问题描述”。
输出描述:
输出一行描述答案:
一个正整数k,表示S的末尾有k个0
输入:
1 | 10 |
输出:
1 | 7 |
说明:
对于100%的数据,1<=n<=1e8
题目让求阶乘最后有几个0,即为该表达式的最后结果含有10的几次方的因子,直接求的话,不太好求 不妨转化一下思路,容易发现10的几次方都有一个通性:质因子只有2和5,
显然,阶乘中 质因子2的个数比5多。所以这个题可以转换为 求 因子5的个数,5的个数即是所求末尾0的个数,那么此题就迎刃而解了
AC代码如下:
1 |
|