刷题——Space Elevator POJ
来源:互联网 发布:电商 用户数据指标 编辑:程序博客网 时间:2024/06/03 03:56
/*
给定一些建筑块,问用这些建筑块能搭建多高的建筑
每个建筑块有一定的高度h,和最高能搭建高度a,和块数c
很明显的这是一个背包问题,背包容量不超过40000
现在也就是求在限制范围中所能搭建的最大高度
dp[i]表示i这个高度是否能达到
那么dp[i]={
-1:不能达到
0:能达到,dp[i-e[i].h*d]=0,d[1,e[i].c]
}
*/
#include <stdio.h>
#include <algorithm>
#include <string.h>
using namespace std;
struct node{int h,a,c;};
node e[405];
bool cmp(node a,node b){
return a.a<b.a;
}
int dp[40005];
int use[40005];
int main(){
int k;
while(~scanf("%d",&k)){
for(int i=0;i<k;i++){
scanf("%d %d %d",&e[i].h,&e[i].a,&e[i].c);
}
sort(e,e+k,cmp);
memset(dp,-1,sizeof(dp));
dp[0]=0;
int maxx=0;
for(int i=0;i<k;i++){
memset(use,0,sizeof(use));
for(int j=e[i].h;j<=e[i].a;j++){
if(dp[j]==-1&&dp[j-e[i].h]==0&&use[j-e[i].h]+1<=e[i].c){
dp[j]=0;
use[j]=use[j-e[i].h]+1;
if(j>maxx){
maxx=j;
}
}
}
}
printf("%d\n",maxx);
}
return 0;
}
给定一些建筑块,问用这些建筑块能搭建多高的建筑
每个建筑块有一定的高度h,和最高能搭建高度a,和块数c
很明显的这是一个背包问题,背包容量不超过40000
现在也就是求在限制范围中所能搭建的最大高度
dp[i]表示i这个高度是否能达到
那么dp[i]={
-1:不能达到
0:能达到,dp[i-e[i].h*d]=0,d[1,e[i].c]
}
*/
#include <stdio.h>
#include <algorithm>
#include <string.h>
using namespace std;
struct node{int h,a,c;};
node e[405];
bool cmp(node a,node b){
return a.a<b.a;
}
int dp[40005];
int use[40005];
int main(){
int k;
while(~scanf("%d",&k)){
for(int i=0;i<k;i++){
scanf("%d %d %d",&e[i].h,&e[i].a,&e[i].c);
}
sort(e,e+k,cmp);
memset(dp,-1,sizeof(dp));
dp[0]=0;
int maxx=0;
for(int i=0;i<k;i++){
memset(use,0,sizeof(use));
for(int j=e[i].h;j<=e[i].a;j++){
if(dp[j]==-1&&dp[j-e[i].h]==0&&use[j-e[i].h]+1<=e[i].c){
dp[j]=0;
use[j]=use[j-e[i].h]+1;
if(j>maxx){
maxx=j;
}
}
}
}
printf("%d\n",maxx);
}
return 0;
}
阅读全文
0 0
- 刷题——Space Elevator POJ
- poj——2392——Space Elevator(多重)
- POJ 2392 Space Elevator
- poj Space Elevator
- poj 2392 Space Elevator
- POJ 2392 Space Elevator
- poj 2392 Space Elevator
- POJ 2392 Space Elevator
- poj 2392 Space Elevator
- POJ-2392-Space Elevator
- poj 2392 Space Elevator
- poj 2392--Space Elevator
- poj 2392 Space Elevator
- POJ Space Elevator
- POJ 2392 Space Elevator
- POJ 2392 Space Elevator
- poj 2392 Space Elevator
- poj 2392 Space Elevator
- opengl的安装与配置
- kotlin使用Glide 4.0.0
- HDU 6168 Numbers
- ImageLoader 显示图片+webView显示网页
- 第三十六篇:JAVA访问数据库之概述
- 刷题——Space Elevator POJ
- Android开发常见BUG记录
- 天天学Linux命令3--cd命令
- zcmu-1938
- apache配置多站点
- LinkedList源码解析(基于JDK1.7)
- Windows部署Tomcat8启动服务
- win7下python3和python2共存环境使用pip
- css margin重叠的问题