2018sjtu-n阶乘尾部0的个数

考察分解质因数的思想

alt

其中要求结尾0的个数,即求分解出的质因数中2和5的个数的最小值。

只需要不断地/2(/5)并计数即可

#include <iostream>
#include <algorithm>

using namespace std;
int n;
int cnt2,cnt5;

int main()
{
    while(cin>>n)
    {
        cnt2=cnt5=0;
        int temp=n;
        while(temp){
            cnt5+=temp/5;
            temp/=5;
        }

        temp=n;
        while(temp)
        {
            cnt2+=temp/2;
            temp/=2;
        }

        cout<<min(cnt2,cnt5)<<endl;


    }
    return 0;
}

全部评论

相关推荐

牛客583549203号:腾讯还好,况且实习而已,实习生流动性很大,属于正常现象,记得和HR委婉解释
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务