解题思路:打印路径的模板题,有点意思。 1 #include 2 #include 3 #include 4 using namespace std; 5 const int maxn = 5; 6 int mapp[maxn][maxn], dir[4][2] = {1, 0, -1, 0, 0,...
分类:
其他好文 时间:
2015-10-05 14:09:00
阅读次数:
119
为了方便打印路径,考虑从下往上转移。dp[i][j][S]表示在i行j列总和为S的方案,dp[i][j][S] = dp[i+1][left][S-x]+dp[i+1][right][S-x]方案O(2^2*n-1),结果要用long long保存。#includeusing namespace s...
分类:
其他好文 时间:
2015-10-04 19:39:26
阅读次数:
132
题意: 找出一条路, 使每个节点相乘,得到的数末尾 0 最少每次移动只能向右或者向下, 找到后打印路径///按照题目要求,就是找出一条从左上角到右下角中每个数含2 or 5 最少的路///可以用Dp的思想, 然后把每个节点该走的方向记下来///再从终点回溯,把路径存入栈,再输出///数据会有0的情况...
分类:
其他好文 时间:
2015-08-31 23:12:10
阅读次数:
198
题目传送门题意:n个饭店在一条直线上,给了它们的坐标,现在要建造m个停车场,饭店没有停车场的要到最近的停车场,问所有饭店到停车场的最短距离分析:易得区间(i, j)的最短距离和一定是建在(i + j) / 2的饭店,预处理出(i, j)的距离和sum[i][j],mark[i][j] 表示区间的最优...
分类:
其他好文 时间:
2015-08-31 21:08:38
阅读次数:
147
简单的0-1背包打印路径问题,我们可以记录一个p[][]数组来判断,当前物品是否被选中,最后按照记录输出,注意是逆序。
#include
#include
int main()
{
int a[25],p[25][10005],i,j,n,m,s[10005];
while(scanf("%d%d",&m,&n)!=EOF){
for(i=...
分类:
其他好文 时间:
2015-08-31 01:16:33
阅读次数:
308
题意:先给你一张你n * n的图,代表城市间的距离,然后,给出n个tax的费用,然后很多询问,问你a到b的最少费用,并且打印路径(字典序)注意tax的费用起点和终点不算逆序spfa:#include#include#include#include#include#includeusing names...
分类:
其他好文 时间:
2015-08-26 10:41:26
阅读次数:
186
题目地址:POJ 1141
题意:给出一串由‘(‘)’‘ [ ’ ’ ] ‘组成的串,将给出的括号序列以添加最小数目括号的形式进行配对。
思路:dp[i][j]表示当前子序列需要添加的最小字符数,path存储的是所有子问题的解。然后详情看代码解释。#include
#include
#include
#include <stdlib.h...
分类:
其他好文 时间:
2015-08-17 12:03:01
阅读次数:
174
#include#include#include#include#include#define N 1010using namespace std;int dp[N], path[N][N], w[N];int main(){ int v, n; while(~scanf("%d", &...
分类:
其他好文 时间:
2015-08-15 16:21:22
阅读次数:
107
本题来自《剑指offer》 路径为从根节点到叶节点一条路径,路径经过的各节点数值之和等于某一给定数值,则打印路径上的节点因为需要打印满足条件的路径节点信息和各节点之和,需要栈记录经过的节点,和一个保存数值之和的变量用前序遍历方法,可以首先访问节点,然后将节点入栈,并将数值和之前入栈的节点值相加如果....
分类:
编程语言 时间:
2015-08-11 12:02:26
阅读次数:
157
Ignatius and the Princess ITime Limit: 2000/1000 MS (Java/Others)Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 14577Accepted Submissio...
分类:
其他好文 时间:
2015-08-09 13:58:16
阅读次数:
107