Factorial

链接

[https://vjudge.net/contest/212939#problem/D]

题意

让你计算n!的位数有多少个0,生成0的就是2,5,可以把一些数拆成2的乘积或者5的乘积(10=25,25=55,125=55)
但有一点很明确就是拆之后2的个数一定是大于5的个数,所以只需要统计5的个数

代码

#include<iostream>
#include<algorithm>
using namespace std;
int main(){
	int n,t;
	cin>>t;
	while(t--){
		cin>>n;
		int ans=0;
		while(n){
			ans+=n/5;
			n/=5;
		}
		cout<<ans<<endl;
	}
	return 0;
}
posted @ 2018-10-29 21:19  ChunhaoMo  阅读(187)  评论(0编辑  收藏  举报