zoukankan      html  css  js  c++  java
  • 2018年东北农业大学春季校赛 E 阶乘后的0【数论】

    链接:https://www.nowcoder.com/acm/contest/93/E
    来源:牛客网

    时间限制:C/C++ 1秒,其他语言2秒
    空间限制:C/C++ 262144K,其他语言524288K
    64bit IO Format: %lld

    题目描述

    这个问题很简单,就是问你n的阶乘末尾有几个0?

    输入描述:

    输入第一行一个整数T(1<=T<=100),代表测试组数
    接下来T行,每行一个数n(1<=n<=10^9)

    输出描述:

    对于每组测试数据,输出对应答案
    示例1

    输入

    5
    1
    2
    3
    4
    5

    输出

    0
    0
    0
    0
    1
    【分析】:经典原题,出烂了的。但我还是错了几发,因为把while(n)写成while(n%5==0),总之还是基础不扎实,没搞清楚真正原理,很悲伤。
    N/5 + N/(5^2) + N/(5^3) + … ,其中N/5表示不大于N的数中能被5整除的数贡献一个因子5,N/(5^2)表示不大于N的数中能被5^2整除的数再贡献一个因子5。所以累加的时候直接ans += N/5;  N/=5;(不断/5

    【代码】:
    #include<bits/stdc++.h>
     
    using namespace std;
     
     
    int main()
    {
        int t, n;
        cin>>t;
        while(t--)
        {
            cin>>n;
            int ans=0;
            while(n) {
                ans += n/5; //累加含有5的因子数
                n /= 5;
            }
            cout<<ans<<endl;
        }
    }
  • 相关阅读:
    js 多物体运动
    js运动 淡入淡出
    js运动 分享到
    正则 重复项最多得子项
    jq 拖拽
    jq 弹出窗口
    jq 选项卡
    jq 写法
    Codeforces 185A Plant( 递推关系 + 矩阵快速幂 )
    HDU 2604 Queuing( 递推关系 + 矩阵快速幂 )
  • 原文地址:https://www.cnblogs.com/Roni-i/p/8724828.html
Copyright © 2011-2022 走看看