找到最小的自然数N,使N!在十进位下最末尾包含Q个零。
算术基础:
求N!末尾有多少个0的方法是N/5+N/25+N/125….
给定答案的范围,那么使用二分的方法会更合适,随着N的增大,0的个数肯定是增大的,那么从中间的数开始计算,如果多了就将top定为刚刚进行计算的那个数,如果0的个数少了就将bot定位刚刚进行计算的那个数,再次取出mid后再次运算。
代码如下:
#include <cstdio>
#include <iostream>
#include <cstdlib>
using namespace std;
int main()
{
int solve (int n);
int Q, i;
scanf ("%d", &Q);
int sta