阶乘末尾0的个数

找到最小的自然数N,使N!在十进位下最末尾包含Q个零。

算术基础:
求N!末尾有多少个0的方法是N/5+N/25+N/125….

给定答案的范围,那么使用二分的方法会更合适,随着N的增大,0的个数肯定是增大的,那么从中间的数开始计算,如果多了就将top定为刚刚进行计算的那个数,如果0的个数少了就将bot定位刚刚进行计算的那个数,再次取出mid后再次运算。

代码如下:

#include 
#include 
#include 
using namespace std;
int main()
{
    int solve (int n);
    int Q, i;
    scanf ("%d", &Q);
    int sta

你可能感兴趣的:(散题,c++)