博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
uva12563 0-1背包
阅读量:5259 次
发布时间:2019-06-14

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

题意:在给定的时间和每首歌的时间下,求最多能唱几首歌,在最多首歌的情况下最多能唱多少时间。

思路:每首歌选或不选,0-1背包。

      在满足歌的数量最多的情况下,比较时间,具体代码体现在,先比较歌曲数目,在歌曲数目相同的情况下,比较时间。

      状态一定要倒序,同一个阶段的状态不能互相推导(一首歌不能加2次)。

#include
using namespace std;#define maxn 180*55+678int d[maxn];int p[maxn];int num[55];int main(){ int T,cas=0; cin>>T; while(T--) { int n,t; cin>>n>>t; memset(num,0,sizeof(num)); memset(d,0,sizeof(d)); memset(p,0,sizeof(p)); for(int i=0;i
>num[i]; for(int i=0;i
=num[i];j--)//状态 { int tmp=d[j-num[i]]+1; if(tmp>d[j]) { d[j]=tmp; p[j]=p[j-num[i]]+num[i]; } else if(tmp==d[j]) { if(p[j]

 

转载于:https://www.cnblogs.com/mu-ye/p/5690907.html

你可能感兴趣的文章
HDU-3018 Ant Trip(欧拉回路)
查看>>
CDOJ 1251 谕神的密码 贪心
查看>>
CMYK列印颜色
查看>>
多线程 测试
查看>>
web提前做好测试
查看>>
tp5.1 本地正常, 线上route.php不起作用的问题
查看>>
[笔记] 斯特林公式
查看>>
opencv删除轮廓
查看>>
实战分区表:SQL Server 2k5&2k8系列(三)
查看>>
JS简单的倒计时(代码优化)
查看>>
CSS2.0实现面包屑
查看>>
css font的简写规则
查看>>
CSS| 框模型-輪廓
查看>>
kafka报错 Replication factor: 3 larger than available brokers: 0.
查看>>
linux查看和修改PATH环境变量的方法
查看>>
浅谈自定义UITextField的方法
查看>>
h.264 Mode Decision
查看>>
《基于B/S中小型超市进销存管理系统的研究与设计》论文笔记(十六)
查看>>
主数据0
查看>>
HDU2001
查看>>