
动态规划
aiLMengi000
这个作者很懒,什么都没留下…
展开
-
数字三角形(POJ1163)
7 3 8 8 1 0 2 7 4 4 4 5 2 6 5 在上面的数字三角形中寻找一条从顶部到底边的路径,使得路径上所经过的数字之和最大。路径上的每一步都只能往左下或右下走。只需要求出这个最大和即可,不必给出具体路径。 三角形的行数大于1小于等于100,数字为 0 - 99 输入格式: 5//三角形行数。下面是三角形 7 3 8 8 1 0 2 7 4 4 4 5 2 6 5 要求输出最大和...原创 2018-08-10 17:19:17 · 334 阅读 · 0 评论 -
2757:最长上升子序列
总时间限制: 2000ms 内存限制: 65536kB 描述 一个数的序列bi,当b1 < b2 < ... < bS的时候,我们称这个序列是上升的。对于给定的一个序列(a1, a2, ..., aN),我们可以得到一些上升的子序列(ai1, ai2, ..., aiK),这里1 <= i1 < i2 < ... < iK <= ...原创 2018-08-10 19:30:45 · 293 阅读 · 0 评论 -
20:滑雪
Michael喜欢滑雪百这并不奇怪, 因为滑雪的确很刺激。可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次走上坡或者等待升降机来载你。Michael想知道载一个区域中最长的滑坡。区域由一个二维数组给出。数组的每个数字代表点的高度。下面是一个例子 1 2 3 4 5 16 17 18 19 6 15 24 25 20 7 14 23 22 21 8 13 12...原创 2018-08-14 15:58:40 · 215 阅读 · 0 评论 -
最长公共子序列(POJ1458)
给出两个字符串,求出这样的一个最长的公共子序列的长度:子序列中的每个字符都能在两个原串中找到,而且每个字符的先后顺序和原串中的先后顺序一致。 Sample Input abcfbc abfcab programming contest abcd mnp Sample Output 4 2 0 #include<iostream...原创 2018-08-11 16:33:51 · 292 阅读 · 0 评论 -
19:Charm Bracelet
有N件物品和一个容积为M的背包。第i件物品的体积w[i],价值是d[i]。求解将哪些物品装入背包可使价值总和最大。每种物品只有一件,可以选择放或者不放(N<=3500,M <= 13000)。 样例输入 4 6 1 4 2 6 3 12 2 7 样例输出 23 首先,想到的是用一个二维数组,F[i][j] 表示取前i种物品,使它们总体积不超过j的最优取法取得的价值总...原创 2018-08-13 16:14:02 · 272 阅读 · 0 评论 -
POJ1390 方盒游戏
错误代码 #include<iostream> #include<cstring> using namespace std; struct Segment{ int color; int len; }; Segment segments[210]; int score[210][210][210]; int clickBox(int i,int j,...原创 2018-08-18 20:10:24 · 328 阅读 · 0 评论