LightOJ 1138 - Trailing Zeroes (III)【二分】
Time Limit: 2 second(s) | Memory Limit: 32 MB |
You task is to find minimal natural number N, so that N! contains exactly Q zeroes on the trail in decimal notation. As you know N! = 1*2*...*N. For example, 5! = 120, 120 contains one zero on the trail.
Input
Input starts with an integer T (≤ 10000), denoting the number of test cases.
Each case contains an integer Q (1 ≤ Q ≤ 108) in a line.
Output
For each case, print the case number and N. If no solution is found then print 'impossible'.
Sample Input |
Output for Sample Input |
3 1 2 5 |
Case 1: 5 Case 2: 10 Case 3: impossible |
今天脑残了。。。。。。
copy
#include <map> #include <set> #include <cstdio> #include <cstring> #include <algorithm> #include <queue> #include <iostream> #include <stack> #include <cmath> #include <vector> #include <cstdlib> //#include <bits/stdc++.h> #define space " " using namespace std; typedef long long LL; //typedef __int64 Int; typedef pair<int,int> paii; const int INF = 0x3f3f3f3f; const double ESP = 1e-5; const double Pi = acos(-1); const int MOD = 1e9+5; const int MAXN = 1e5; bool flag ; bool judge(int x, int y) { int f = 5; int sum = 0; while (f <= x) { sum = sum + x/f; f = f*5; } if (sum == y) flag = true; return sum >= y; } int main() { int t, n; int cnt = 0; scanf("%d", &t); while (t--) { scanf("%d", &n); int ans; flag = false; int lb = 0, ub = 1e9; while (ub >= lb) { int mid = (ub + lb) >> 1; if (judge(mid, n)) { ans = mid; ub = mid - 1; } else lb = mid + 1; } if (flag) printf("Case %d: %d\n", ++cnt, ans); else printf("Case %d: impossible\n", ++cnt); } return 0; }
copy
本文作者: zprhhs
本文链接:https://www.cnblogs.com/cniwoq/p/6770804.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
分类:
标签:
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 深入理解 Mybatis 分库分表执行原理
· 如何打造一个高并发系统?
· .NET Core GC压缩(compact_phase)底层原理浅谈
· 现代计算机视觉入门之:什么是图片特征编码
· .NET 9 new features-C#13新的锁类型和语义
· Spring AI + Ollama 实现 deepseek-r1 的API服务和调用
· 《HelloGitHub》第 106 期
· 数据库服务器 SQL Server 版本升级公告
· 深入理解Mybatis分库分表执行原理
· 使用 Dify + LLM 构建精确任务处理应用