poj 1426 之多解
文章平均质量分 62
limchiang
这个作者很懒,什么都没留下…
展开
-
poj 1426 之解三 动态规划
题目链接题意:给定一个数 n (1 解题思路:dp[ i ] [ j ] 表示 数列 1,10,100,1000,10000,......的前 i 个数任意组合得到的和是否有模 n 是 j的数,若有,将此数中最小的存在dp[i][j]中。#pragma warning (disable:4786) #include#includeusing nam原创 2013-02-07 20:51:13 · 219 阅读 · 0 评论 -
poj 1426 之解一 BFS
题目链接题意:给定一个数 n (1 解题思路:BFS (从 1 开始 对每个数的 * 10 和 * 10 +1入队)下面的代码可以这样优化:通过设置一个mod[201] 数组记录已入过队的数模 n 的值,其余模相同的数就可以不再入队。#include #include using namespace std;int n;long long bfs(){原创 2013-02-07 20:19:47 · 193 阅读 · 0 评论 -
POJ 1426 之解四 DFS
题目链接题意:给定一个数 n (1 解题思路: p * 10 和 p * 10 + 1 两条分支,包含剪枝优化#include#include #include int s=0; int mod[201];using namespace std;void DFS(__int64 p,int n,int k){ ////DFS终止条件 i原创 2013-02-07 21:20:24 · 236 阅读 · 0 评论 -
poj 1426 之解二 鸽巢原理
题目链接题意:给定一个数 n (1 解题思路:题目变换为 1,10,100,1000,10000,......等的组合,而用鸽巢原理可以证明,任何一个数 N,都存在这样一个数,该数是上述队列中连续数相加的和且能被 N整除。证明思路:对 a1 = 1 + 10, a2 = 1 + 10 + 100, a3 = 1 + 10 + 100 + 1000,......组成的原创 2013-02-07 20:44:05 · 314 阅读 · 0 评论