UVA - 10624 Super Number
来源:互联网 发布:维氏 威戈 知乎 编辑:程序博客网 时间:2024/05/19 16:21
题目大意: 给定两个数 n 和 m ,如果长度为 m 的数满足对于每个 i (n <= i <= m),数字的前 i 位都能被 i 整除,那么这个数就是超级数,求出字典序最小的符合要求的超级数。
解题思路:直接暴力就行,如果每次进行整除判断的时候,对当前数每位都进行取余运算,那么将会超时,因此每 18 位进行一次取余(long long的数据范围为:-9223372036854775808..9223372036854775807,这样在 1S 左右就可以AC了。
#include <cstdio>int n, m, A[35];bool judge(int cnt) { long long tmp = 0; for (int i = 0; i < cnt; ++i) { tmp = tmp * 10 + A[i]; if (i == 18) tmp %= cnt; } return tmp % cnt;}bool DFS(int cur) { if (cur == m) return true; for (int i = cur ? 0 : 1; i < 10; ++i) { A[cur] = i; if ((cur < n - 1 || !judge(cur + 1)) && DFS(cur + 1)) return true; } return false;}int main() { int T, cnt = 0; scanf("%d", &T); while (T--) { printf("Case %d: ", ++cnt); scanf("%d%d", &n, &m); if (DFS(0)) { for (int i = 0; i < m; ++i) printf("%d", A[i]); puts(""); } else puts("-1"); } return 0;}
0 0
- uva 10624 - Super Number
- uva 10624Super Number
- UVa 10624 - Super Number
- UVA 10624 - Super Number
- UVa 10624 - Super Number
- UVA - 10624 Super Number
- uva 10624 Super Number 回溯
- UVA - 10624 Super Number 暴力
- UVA - 10624 Super Number(回溯)
- uva 10642 Super Number(dfs)
- UVa 10624 - Super Number, Rujia Liu的神题(四)
- uva 10624 Super Number 险险的过了。。。
- 10624 - Super Number
- 10624 - Super Number
- uva10624 - Super Number
- [回溯]Super Number uva10624
- UVA10624 - Super Number(dfs)
- leetcode Super Ugly Number
- 分享一个前端等比压缩图片插件
- Linux命令---mpstat命令详解
- 线程 线程组 jvm出来异常组的方法
- Android-RadioButton&RadioGroup
- spring mvc自动日期格式化绑定
- UVA - 10624 Super Number
- 投影
- linux终端界面的字颜色设置
- C++sort函数的用法
- java字符串操作:如何实现字符串的反转及替换?
- python学习笔记1
- iOS自定义转场动画
- hdu 2680 Choose the best route
- 单例模式+工厂模式的c++实现