qduoj 别骂了,不会让你爆零的(思维)
Posted xuejye
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了qduoj 别骂了,不会让你爆零的(思维)相关的知识,希望对你有一定的参考价值。
题目链接:https://qduoj.com/problem/151/点击打开链接
别骂了,不会让你爆零的
发布时间: 2017年6月3日 18:46 最后更新: 2017年6月3日 18:49 时间限制: 1000ms 内存限制: 128M
(n!%(10^k))==0.
已知n,求能使上式成立的k的最大值。
第一行输入测试用例的个数T(0<t<=100)。对于每一个测试用例输入一行只有一个数n(0<=n<=10^18)
对于每一个测试用例在一行中输出一个数,代表能使上式成立的k的最大值。
3 3 5 20
0 1 4
思考观察发现 其实就是取因子中所有2和5的个数 而2比5的个数多 所以只需计算5的个数 使2*5=10让k++
代码简短 需要思考
#include <stdio.h>
#include <stdlib.h>
#include <iostream>
#include<algorithm>
#include <math.h>
#include <string.h>
#include <limits.h>
#include <string>
#include <queue>
#include <stack>
using namespace std;
int main()
int t=0;
scanf("%d",&t);
while(t--)
long long int n=0;
long long int num=0;
scanf("%lld",&n);
while(n!=0)
num+=n/5;
n=n/5;
printf("%lld\\n",num);
以上是关于qduoj 别骂了,不会让你爆零的(思维)的主要内容,如果未能解决你的问题,请参考以下文章