HDU1069——Monkey and Banana(动态规划)
来源:互联网 发布:手机图片制作软件 编辑:程序博客网 时间:2024/05/16 06:28
题目链接
题目要求找最高能叠的箱子的高度,其实就是按照求LIS的方式来求即可,只是此处的最长按照箱子的高度做参数,然后一个箱子能叠在另一个箱子上的前提是处在下面的箱子长和宽都比上面的箱子要大,不能相等,输入时分类一下再处理输入数组,然后按照长或者宽的顺序sort一下,再对另一个参数进行dp即可。
#include<iostream>#include<cstring>#include<cstdio>#include<cmath>#include<algorithm>using namespace std;struct box{ int x, y, z; box() { x=0; y=0; z=0; }}s[100];bool cmp(box a,box b){ if(a.x==b.x)return a.y<b.y; return a.x<b.x;}int dp[100]={0};int main(){ //freopen("in.in","r",stdin); int n; int t=0; while(scanf("%d",&n)!=EOF) { t++; if(n==0)break; int k=0; memset(dp,0,sizeof(dp)); for(int i=1;i<=n;i++) { int a, b, c; scanf("%d%d%d",&a,&b,&c); if(a==b&&b==c) { s[k].x=a;s[k].y=b;s[k].z=c;k++; } else if(a==b) { s[k].x=a;s[k].y=b;s[k].z=c;k++; s[k].x=min(a,c);s[k].y=max(a,c);s[k].z=b;k++; }else if(a==c) { s[k].x=a;s[k].y=c;s[k].z=b;k++; s[k].x=min(a,b);s[k].y=max(a,b);s[k].z=c;k++; }else if(b==c) { s[k].x=b;s[k].y=c;s[k].z=a;k++; s[k].x=min(a,b);s[k].y=max(a,b);s[k].z=c;k++; }else { s[k].x=min(a,b);s[k].y=max(a,b);s[k].z=c;k++; s[k].x=min(a,c);s[k].y=max(a,c);s[k].z=b;k++; s[k].x=min(b,c);s[k].y=max(b,c);s[k].z=a;k++; } } sort(s,s+k,cmp); int ans=0; for(int i=0;i<k;i++) { dp[i]=s[i].z; for(int j=0;j<=i;j++) { if(s[j].x<s[i].x&&s[j].y<s[i].y) dp[i]=max(dp[j]+s[i].z,dp[i]); } ans=max(dp[i],ans); } printf("Case %d: maximum height = %d\n",t,ans); } return 0;}
0 0
- HDU1069——Monkey and Banana(动态规划)
- HDU1069——Monkey and Banana(动态规划)
- HDU1069 Monkey and Banana (动态规划)
- 动态规划:HDU1069-Monkey and Banana
- 【hdu1069】Monkey and Banana (动态规划)
- 【HDU1069】 Monkey and Banana(动态规划)
- hdu1069 Monkey and Banana 一个简单的动态规划
- HDU1069——Monkey and Banana
- hdu1069——Monkey and Banana
- HDU1069 Monkey and Banana ——dp
- HDU1069--Monkey and Banana
- hdu1069 Monkey and Banana
- hdu1069 Monkey and Banana
- hdu1069 Monkey and Banana
- 【HDU1069】【Monkey and Banana】
- HDU1069 Monkey and Banana
- hdu1069 Monkey and Banana
- hdu1069 Monkey and Banana
- Hibernate.cfg.xml
- linux分区详解
- servlet_08 读取表单的所有参数
- [转自OCM白大师]ORACLE空间管理实验8:数据块格式分析--DUMP结合BBED
- spring 多数据源 ,mybatis和hibernet版本
- HDU1069——Monkey and Banana(动态规划)
- 优驾行easy
- Ubuntu14.04 + NVIDIA8.0 + cuda + cudnn + opencv 3 + matlab
- exynos4412内存分析
- 微信,新浪云,配置php,验证
- ValueError: invalid \x escape
- ROADS poj 1724(dfs + 剪枝)
- PHP延迟静态绑定
- Hbase客户端的写缓冲区和put列表