方法一:直接求因子5的个数。
1 #include<bits/stdc++.h> 2 using namespace std; 3 int main(){ 4 int n,cnt,tmp; 5 while(cin>>n){ 6 cnt=0; 7 for(int i=5;i<=n;i+=5){ 8 tmp=i; 9 while(tmp%5==0)cnt++,tmp/=5;//累加因子5的个数 10 } 11 cout<<cnt<<endl; 12 } 13 return 0; 14 }
方法二:分治法。
1 #include<bits/stdc++.h> 2 using namespace std; 3 int main(){ 4 int n,cnt; 5 while(cin>>n){ 6 cnt=0; 7 while(n)cnt+=n/5,n/=5; 8 cout<<cnt<<endl; 9 } 10 return 0; 11 }
原文地址:https://www.cnblogs.com/acgoto/p/9465573.html
时间: 2024-10-13 03:21:09