首页 > 其他 > 详细

hdu1241阶乘末位零的个数

时间:2015-08-21 21:09:38      阅读:211      评论:0      收藏:0      [点我收藏+]

关于数论,表示基本上一窍不通,最主要是要有数论的思想,把数的问题都转化为素数的思想,然而并没有,所以还是好好刷题,慢慢培养吧。

末位的0只能是2*5=10得到,2出现的频率高于5,所以计算5出现在1~n中多少次,其中25=5*5(出现2次),50=5*5*2;75=5*5*3,依次类推。

eg:124/5=24;

  24/5=4;

  4/5=0.

其中总有些梗要自己理解的。。。。。

题目链接

技术分享
 1 #include<cstdio> 
 2 #include<iostream>
 3 using namespace std;
 4 int main()
 5 {
 6     int n,t;
 7     cin>>t;
 8     while(t--)
 9     {
10         cin>>n;
11         int res=0;
12         while(n/5)
13         {
14             res+=n/5;
15             n/=5;
16         }
17         cout<<res<<endl;
18     }
19     return 0;
20 }
View Code

 

hdu1241阶乘末位零的个数

原文:http://www.cnblogs.com/sunshiniing/p/4748963.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!