最水的dp
文章平均质量分 69
a1003zoucun
这个作者很懒,什么都没留下…
展开
-
City Game
这个题上面那个题本质上是一样的,都是经典的dp题。只不过这个多了一个小处理,现在琢磨着,如果换成三维该怎么做!点击打开链接#include #define N 1005using namespace std;int n,m,res;struct node { int l,r,val; node(){l=r=val=0;}}a[N];void area(){ int i;原创 2012-11-27 18:34:15 · 302 阅读 · 0 评论 -
Super Jumping! Jumping! Jumping!
/* 又做一水题,裸递增子序列 ,先贴在这里吧 以后 再汇总的一处*/#include #include #include #define N 1005using namespace std;int a[N] , b[N];int Max (int a1,int b1){return a1>b1?a1:b1;}/*思路:裸最大递增子序列*/int main()原创 2012-12-09 12:51:04 · 264 阅读 · 0 评论 -
Largest Rectangle in a Histogram
/*很经典的dp题,开始不解其意,用了简单的模拟方法,超时了n次*/#include #define N 100005using namespace std;__int64 b[N],s;struct node { __int64 r,l,val;}a[N];int main (){ //freopen("h.txt","r",stdin); int i,n; whil原创 2012-11-25 18:36:36 · 204 阅读 · 0 评论 -
最大连续子序列
最大连续子序列,不知道算什么题型,暂算为dp吧。只要设置一个滚动数组,连续滚动,就能得到最大的值!菜鸟做题,从最水,最没技术含量的开始!#include #define N 10005using namespace std;struct node{ int x,y,val; node(){x=y=val=0;}}dp[N];int main (){ int i,j,n,k,原创 2012-11-25 14:43:44 · 247 阅读 · 0 评论 -
最大报销额
/*又一次做了一个所谓的01背包的题,给你一个固定的最大报销值,你能报销的值不能超过这个最大固定值。现在给你,很多报销单,问能报销的最大值(解释题意不给力)!很明显的01背包思想。上次我还在问,如果碰到浮点数怎么处理,今天就果断碰到一个浮点的01背包。果断只能加大数据,*100然后作为01整数背包处理!菜鸟解决一个水题,也感觉乐在其中。*/#include #include #incl原创 2012-11-22 19:54:22 · 623 阅读 · 0 评论 -
Robberies
题目意思大致是这样的,一个强盗去打劫银行,每一家银行可以打劫到一定的钱财,但是也有一个被捕概率!强盗可以打劫多家银行,只要这些被捕概率和不超过某个值就不会被捕。问强盗最多可以打劫到多少钱!参考了别人的思路,不知01背包是为何物!但是思路还是比较好理解。1 首先强盗要逃离,所以所求概率一定不是被捕概率,既是逃跑概率越高,获得的钱可能越多。2 将每个银行获得钱作为dp的下标依次枚举,因为获原创 2012-11-21 18:49:47 · 625 阅读 · 0 评论 -
I NEED A OFFER!
/* 题意中文的,很好理解,基础的01背包问题。不过有个地方我很诧异,题目竟然有不花钱获得录取概率的,哎,又一次先入为主了,果断丢了这种情况,wa了一次! */点击打开链接#include #include #define N 100005using namespace std;double dp[N];struct node{ int v; d原创 2012-12-03 14:50:07 · 455 阅读 · 0 评论 -
免费馅饼
/* 很明显的数塔模型,不过多了一条枝而已!总结:对于某个看是复杂的题目要寻找ta的本质,转化为自己已知熟悉的(归化思想) * / 点击打开链接#include #include #define M 15#define N 100005using namespace std;int dp[N][M];int mx(int x,int y,int z原创 2012-12-02 17:21:20 · 305 阅读 · 0 评论 -
Fate
dp【i】【j】=max{dp【i】【j-1】,dp【i-1】【j】};点击打开链接#include #define N 25#define M 1005#define inf -0x3f3f3f3fusing namespace std;int mx(int x,int y) {return x>y?x:y;}int main (){ //freopen("a.txt","r原创 2012-12-01 18:54:36 · 235 阅读 · 0 评论 -
数塔
/* 最简单的树状dp,把它贴到这里,其实这个最基本的数塔是可以做为,以后很多题目的变形的。作为基本模型,很多题目万变不离其中*/#include #include #define N 105using namespace std;int dp[N][N];int mx(int x,int y) {return x>y?x:y;}int main ()原创 2012-12-02 15:48:38 · 545 阅读 · 0 评论 -
FatMouse's Speed
很水的一个题目,题目意思很简单。思路,先按,体重或者速度排序,然后对速度或者体重的序列,求最大递增或递减序列。代码仅仅是实现了思路而已,很长恨挫!点击打开链接 http://acm.hdu.edu.cn/showproblem.php?pid=1160#include #include #include #include using name原创 2012-11-16 14:40:23 · 1190 阅读 · 0 评论 -
Bone Collector
经典的01背包问题 点击打开链接#include #include #define N 1005using namespace std;int dp[N];struct node{ int x,y;}a[N];int max(int w,int r) {return w>r?w:r;}int main (){ //freopen("a.txt"原创 2012-11-28 14:52:32 · 273 阅读 · 0 评论 -
Monkey and Banana
/* 最大递增子序列模型 ,题目意思:给你很多种箱子的长宽高,求箱子所能垒成的最高高度,要求必须底层的箱子长宽覆盖上层的箱子,注意每种箱子都有无限多个(这个很重要) 最近听项目高手说不管写什么程序,一定要写点注释,所以我也学着写点,为以后打基础!*/#include #include #include #include #define N 1000using names原创 2012-12-08 22:41:51 · 261 阅读 · 0 评论