动态规划
Red_Flame
热爱C/C算法Windwos编程.
展开
-
单调递增序列 NYOJ 17
以前接触的一点动态规划知识都忘光了o(╯□╰)o没办法,只好重新做题复习了先从简单的开始吧求一个字符串的最长递增子序列的长度如:dabdbf最长递增子序列就是abdf,长度为4 输入 第一行一个整数0随后的n行,每行有一个字符串,该字符串的长度不会超过10000 输出 输出字符串的最长递增子序列的长度 样例输入 3 aaa原创 2012-11-07 00:51:38 · 603 阅读 · 0 评论 -
nyoj 16 矩形嵌套 dp
有n个矩形,每个矩形可以用a,b来描述,表示长和宽。矩形X(a,b)可以嵌套在矩形Y(c,d)中当且仅当a<c,b<d或者b<c,a<d(相当于旋转X90度)。例如(1,5)可以嵌套在(6,2)内,但不能嵌套在(3,4)中。你的任务是选出尽可能多的矩形排成一行,使得除最后一个外,每一个矩形都可以嵌套在下一个矩形内。输入 第一行是一个正正数N(0每组测试数据的第一行是一个正正数n,表示该原创 2012-11-07 19:35:30 · 521 阅读 · 0 评论 -
hdu 1003 dp
The first line of the input contains an integer T(1<=T<=20) which means the number of test cases. Then T lines follow, each line starts with a number N(1<=N<=100000), then N integers followed(all the原创 2012-11-08 01:04:33 · 435 阅读 · 0 评论 -
完全背包 nyoj311
此题之前先分析两种常见的背包问题,01背包与完全背包,01背包:在M件物品中取出若干件物品放到背包中,每件物品对应的体积v1,v2,v3,....对应的价值为w1,w2,w3,,,,,每件物品之多拿一件。解决方案 考虑用动态规划的方法来解决,这里的: 阶段是:在前N件物品中,选取若干件物品放入背包中; 状态是:在前N件物品中,选取若干件物品放入所剩空间为W的背包中的所能获原创 2012-11-06 13:14:46 · 1643 阅读 · 0 评论 -
RMQ nyoj119
题目链接http://acm.nyist.net/JudgeOnline/problem.php?pid=119大致题意是求区间最值问题,若采取常规方法,当数据数量大时,时间复杂度为O(n^2),不是一个好的方法。下面介绍一种RMQ算法,RMQ故名思意 Range Minsum/Maxsum Query,求区间的最大与最小值RMQ是一种DP的思想。Step 1.预处理,过程耗时O(原创 2012-11-16 20:20:33 · 601 阅读 · 0 评论 -
整数划分 NYOJ 90
描述 将正整数n表示成一系列正整数之和:n=n1+n2+…+nk, 其中n1≥n2≥…≥nk≥1,k≥1。 正整数n的这种表示称为正整数n的划分。求正整数n的不 同划分个数。 例如正整数6有如下11种不同的划分: 6; 5+1; 4+2,4+1+1; 3+3,3+2+1,3+1+1+1; 2+2+2,2+2+1+1,2+1+1+1+1; 1+1+1+1+1+原创 2012-11-21 00:18:52 · 1145 阅读 · 0 评论 -
poj 1700 过河问题
链接:http://poj.org/problem?id=1700 A group of N people wishes to go across a river with only one boat, which can at most carry two persons. Therefore some sort of shuttle arrangement must be arrang原创 2012-12-17 00:33:48 · 644 阅读 · 0 评论 -
poj 1050 nyoj104 矩阵最大和
给定一个由整数组成二维矩阵(r*c),现在需要找出它的一个子矩阵,使得这个子矩阵内的所有元素之和最大,并把这个子矩阵称为最大子矩阵。例子:0 -2 -7 0 9 2 -6 2 -4 1 -4 1 -1 8 0 -2 其最大子矩阵为:9 2 -4 1 -1 8 其元素总和为15。输入 第一行输入一个整数n(0每组测试数据原创 2012-11-09 22:13:26 · 715 阅读 · 0 评论