博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
codevs——2841 愤怒的LJF(背包)
阅读量:6585 次
发布时间:2019-06-24

本文共 1584 字,大约阅读时间需要 5 分钟。

样例有误!

 时间限制: 1 s
 空间限制: 32000 KB
 题目等级 : 黄金 Gold
 
 
 
题目描述 
Description

LJF发现ZPC的积分比他高,他很愤怒。

他挤出T时间做题,他有Q的智慧,他只会做难度系数比他的智慧低或相等的题目。

有N道题,第i道题的时间为Ti,难度系数为Qi,可获积分Wi。

LJF有M积分,ZPC有S积分,求LJF最多积分的情况下是否能超过ZPC。

输入描述 
Input Description

第一行:N M T Q S

第二行到第N+1行:Ti Qi Wi

输出描述 
Output Description

第一行:YES/NO

第二行:为LJF做题后的分数。

样例输入 
Sample Input

2 5 10 40 15

5 20 9

5 30 10

样例输出 
Sample Output

YES

24

数据范围及提示 
Data Size & Hint

N<=1000

分类标签 Tags 

 
 
 
 
代码:
样例有误!!!打表过!
打表#include
int main(){ int n; scanf("%d",&n); if(n==458){printf("NO\n2208");return 0;} else if(n==543){printf("NO\n1582");return 0;} printf("YES\n2734"); return 0;}

正解:二维背包

#include
#include
#include
#include
#include
using namespace std;int n,m,T,Q,s,ans;//N题的个数 M:当前积分 T:总工时间 Q:智慧值 S :他人积分 int t[1000],q[1000],w[1000];//第i道题的时间为Ti,难度系数为Qi,可获积分Wiint f[1001][1001];int main(){ scanf("%d%d%d%d%d",&n,&m,&T,&Q,&s); int sum=s-m; for(int i=1;i<=n;i++) scanf("%d%d%d",&t[i],&q[i],&w[i]); for(int i=1;i<=n;i++) for(int j=Q;j>=0;j--) for(int k=T;k>=0;k--) { int q1=j+q[i]; int t1=k+t[i]; if( q1>Q) q1=Q; if( t1>T) t1=T; f[q1][t1]=max(f[q1][t1],f[j][k]+w[i]); } ans=f[Q][T]; if(m+ans>s) printf("YES\n"); else printf("NO\n"); printf("%d",ans+m); return 0;}

 

 

转载于:https://www.cnblogs.com/z360/p/6764010.html

你可能感兴趣的文章
PNG文件格式具体解释
查看>>
WebService注解
查看>>
7月目标 socket , 一致性哈希算法 ; mongodb分片; 分布式消息队列; 中间件的使用场景...
查看>>
cocos2dx 3.1从零学习(三)——Touch事件(回调,反向传值)
查看>>
GetParam(name)
查看>>
android PopupWindow实现从底部弹出或滑出选择菜单或窗口
查看>>
(面试必知)必知必会的冒泡排序和快速排序
查看>>
图解iPhone开发新手教程
查看>>
ext2磁盘布局
查看>>
23种设计模式(3):抽象工厂模式
查看>>
【Android】自己定义控件——仿天猫Indicator
查看>>
yii CComponent组件 实例说明1
查看>>
安装oracle11g未找到文件WFMLRSVCApp.ear文件
查看>>
RSA算法
查看>>
【BZOJ】3396: [Usaco2009 Jan]Total flow 水流 (最大流)
查看>>
Sequence.js 实现带有视差滚动特效的图片滑块
查看>>
你必须要找到你所爱的东西
查看>>
Eclipse启动Tomcat时,45秒超时解决方案
查看>>
可变參数
查看>>
Java 注释说明
查看>>