2018年东北农业大学春季校赛E题,计算N的阶乘有几个零,参考了网上的代码。每个末尾0对应一个因子2和一个因子5,因子2出现的频率高于5,所以问题转化为求因子5的个数。
#include<iostream>
using namespace std;
int main(){
int t;
int n;
cin>>t;
while (t--){//t组数据
cin>>n;
int res=0;
while (n) {//可以理解为每次都从有因子5的数中取出一个因子5,每次可以取出n/5个
res+=n;
n=n/5;
}
cout<<res<<endl;
}
return 0;
}