51NOD 1003 阶乘后面0的数量(一个思维的题目)

标签: 思维
4404人阅读 评论(0) 收藏 举报
分类:

传送门
1003 阶乘后面0的数量
n的阶乘后面有多少个0?
6的阶乘 = 1*2*3*4*5*6 = 720,720后面有1个0。
Input
一个数N(1 <= N <= 10^9)
Output
输出0的数量
Input示例
5
Output示例
1
解题思路:
其实这是一个比较水的题,将这个题放上呢,是为接下来要写的一篇博客做铺垫的,我们可以这么想,要求n!后面有多少个0,那么什么样的数能够组成0呢,肯定是2*5了,那么很容易就想到出现5的次数比2小,那么我们主要就考虑出现5的次数就行了。所以就是看n!里面有多少个5,这个可以通过递归来实现。详见代码:

上代码:

#include <iostream>

using namespace std;
typedef long long LL;
LL get(LL n)
{
    if(n == 0)
        return 0;
    return n/5+get(n/5);
}
int main()
{
    LL n;
    while(cin>>n)
    {
        cout<<get(n)<<endl;
    }
    return 0;
}
/**
                   _ooOoo_
                  o8888888o
                  88" . "88
                  (| -_- |)
                  O\  =  /O
               ____/`---'\____
             .'  \\|     |//  `.
            /  \\|||  :  |||//  \
           /  _||||| -:- |||||-  \
           |   | \\\  -  /// |   |
           | \_|  ''\---/''  |   |
           \  .-\__  `-`  ___/-. /
         ___`. .'  /--.--\  `. . __
      ."" '<  `.___\_<|>_/___.'  >'"".
     | | :  `- \`.;`\ _ /`;.`/ - ` : | |
     \  \ `-.   \_ __\ /__ _/   .-` /  /
======`-.____`-.___\_____/___.-`____.-'======
                   `=---='
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
         佛祖保佑       每次AC
**/
查看评论

阶乘后面0的数量

n的阶乘后面有多少个0? 6的阶乘 = 1*2*3*4*5*6 = 720,720后面有1个0。 #include using namespace std; int main() { ...
  • brucehb
  • brucehb
  • 2017-04-15 22:09:45
  • 184

[51NOD] 1003 阶乘后面0的数量 [数学]

n的阶乘后面有多少个0? 6的阶乘 = 1*2*3*4*5*6 = 720,720后面有1个0。 Input 一个数N(1 ...
  • ctsas
  • ctsas
  • 2017-02-27 11:13:11
  • 427

计蒜客 2018 蓝桥杯省赛 B 组模拟赛(五)E. 代码填空:末尾零的个数

【题目链接】:https://nanti.jisuanke.com/t/25088【题目描述】:N! 末尾有多少个 0 呢?N! = 1×2×⋯×N。代码框中的代码是一种实现,请分析并填写缺失的代码。...
  • mcp3128
  • mcp3128
  • 2018-03-26 12:35:17
  • 255

51NOD 1003 阶乘后面0的数量

题目链接:https://www.51nod.com/onlineJudge/questionCode.html#!problemId=1003 1003 阶乘后面0的数量 ...
  • qq_34287501
  • qq_34287501
  • 2017-01-26 20:39:01
  • 211

51Nod--1003 阶乘后面0的数量

题目链接:http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1003 n的阶乘后面有多少个0? 6的阶乘 = 1*2*3*...
  • Hacker_ZhiDian
  • Hacker_ZhiDian
  • 2017-06-01 22:44:07
  • 263

一个数的阶乘后面有多少个0

分析: 看这个题目好像一点思路都没有,毕竟0 的算法是不行的了,仔细分析一下出现0的话最简单的情况就是2*5=10这种情况了,那么我们可以想到将1*2*3*4*5*6*7....这样的阶乘序列进行素数...
  • caojiangxia
  • caojiangxia
  • 2015-10-26 20:27:55
  • 1535

试题:基本算法题之【计算N!后面有多少个0】

对于任意输入的一个数字n,求n!后面有多少个0,如10!后面有2个0 function  fun(n) {     var num = 0;     var i,j;       ...
  • hsd2012
  • hsd2012
  • 2016-09-18 20:46:04
  • 316

CSU 1111: 三家人【有趣的思维题】

1111: 三家人 Time Limit: 1 Sec  Memory Limit: 128 MB Submit: 2241  Solved: 874 [Submit][Status][We...
  • hurmishine
  • hurmishine
  • 2016-08-21 21:43:34
  • 937

HDFS小文件处理解决方案总结+facebook(HayStack) + 淘宝(TFS)

一、概述 手机图片或者像淘宝这样的网站中的产品图片特点: (1)、大量手机用户同时在线,执行上传、下载、read等图片操作 (2)、文件数量较大,大小一般为几K到几十K左右   HDFS存储...
  • xiongwei1209
  • xiongwei1209
  • 2012-03-01 15:25:46
  • 4655

hdu 4550 贪心 思维题 不错

http://acm.hdu.edu.cn/showproblem.php?pid=4550 想了挺久,然后各种分类 终于AC,如果是现场,对自己没信心的话,估计还是要WA,,,,,,然后搜题解,发现...
  • u011026968
  • u011026968
  • 2014-10-16 20:00:40
  • 891
    个人资料
    专栏达人 持之以恒
    等级:
    访问量: 54万+
    积分: 1万+
    排名: 1631
    博客专栏