UVa 12563 - Jin Ge Jin Qu hao(01背包)
给出剩余时间和想唱的歌,求最多能唱几首和最长时间。
较为简单的01背包问题,在算数目的时候顺便计算时间就好。
#include<iostream>
#include<cstring>
using namespace std;
const int maxn=180*55+678;
int song[55],f[maxn],k[maxn];
int main(){int t,tt=0;cin>>t;while(t--){memset(f,0,sizeof(f));memset(k,0,sizeof(k));memset(song,0,sizeof(song));int n,t,cnt=1,len=678;cin>>n>>t;--t;for(int i=0;i<n;++i)cin>>song[i];for(int i=0;i<n;++i)for(int j=t;j>=song[i];--j){if(f[j-song[i]]+1>f[j]||(f[j-song[i]]+1==f[j]&&k[j-song[i]]+song[i]>k[j])){f[j]=f[j-song[i]]+1;k[j]=k[j-song[i]]+song[i];}}cnt+=f[t],len+=k[t];cout<<"Case "<<++tt<<": "<<cnt<<" "<<len<<endl;}
}
UVa 12563 - Jin Ge Jin Qu hao(01背包)相关推荐
- UVA 12563 Jin Ge Jin Qu hao 01背包变形
基本的01背包,更新的时候保持背包里每一个元素的num最大然后time尽量长 CSDN也支持makedown了试一下 12563 Jin Ge Jin Qu hao (If you smiled wh ...
- UVa 12563 Jin Ge Jin Qu hao(01背包)
题意 你在KTV还剩t秒钟的时间 你需要在n首歌中选择尽量多的歌使得歌的数量最多的前提下剩下的时间最小 至少要留一秒给劲歌金曲 所以是一个容量为t-1的01背包 d[i][j]表示恰用j秒时 ...
- Jin Ge Jin Qu hao UVA - 12563 (劲歌金曲)01背包,求装入的东西最多(相同多时价值大)
题目:白书p274 题意: KTV里面有n首歌曲你可以选择,每首歌曲的时长都给出了. 对于每首歌曲,你最多只能唱1遍. 现在给你一个时间限制t (t<=10^9) , 问你在最多t-1秒的时间 ...
- UVA 12563 劲歌金曲 Jin Ge Jin Qu hao
劲歌金曲 Jin Ge Jin Qu hao 题面翻译 (如果当你看到这个标题的时候笑了,那么这个问题是为你准备的ヽ( ̄▽ ̄)ノ) 如果问一个麦霸:"你在KTV里必唱的曲目有哪些?" ...
- Jin Ge Jin Qu hao - UVa 12563 dp背包
Problem J Jin Ge Jin Qu [h]ao (If you smiled when you see the title, this problem is for you ^_^) Fo ...
- 12563 - Jin Ge Jin Qu hao
12563 - Jin Ge Jin Qu hao (If you smiled when you see the title, this problem is for you ^_^) For th ...
- UVA12563: Jin Ge Jin Qu hao(类01背包)
Problem J Jin Ge Jin Qu [h]ao (If you smiled when you see the title, this problem is for you ^_^) Fo ...
- UVA 12563 Jin Ge Jin Qu hao(多阶段决策问题,DP)
题意:给出n首爱唱的歌,剩余t时间.由于ktv最后不会强制暂停你的歌曲,所以最后你可以点一首劲歌金曲,也就是最后可以加上678秒多唱一些时间.问在保证能唱的歌曲尽量多的情况下,唱歌的时间尽量长.输出最 ...
- 例题 9-5 劲歌金曲(Jin Ge Jin Qu [h]ao Rujia Liu‘s Present 6, UVa 12563)
原题链接:https://vjudge.net/problem/UVA-12563 分类:背包问题 备注:0-1背包变形 注意:千万不要包括给的时间t,因为劲歌金曲是必须要唱的! #include&l ...
- 12563 - Jin Ge Jin Qu hao 【DP】
题目大意 样例 input output 解释 思路 代码 Hit 题目大意 传送门 输入n,t(n首歌,剩余t秒)和每首歌的长度. 输出可以唱的最多的总歌曲数目 以及 唱歌的时间长度. 样例 inp ...
最新文章
- Java从键盘输入n行字符串_Java十四天零基础入门-Java布尔类型
- Object C学习笔记22-#define 用法
- java 中遍历目录下所有文件
- antiddos翻译_AntiDDoS8000系列DDoS防御系统
- 二分查找和折半插入排序一块说说-很合适~~~
- Mybatis多对多,复杂增删改查(特殊需求循环插入,分组查询)
- HTML5笔记1——HTML5的发展史及标签的改变
- 一文讲透,关于搭建指标体系,整理的重要知识点都在这里了
- 大于2T硬盘通过UEFI启动+GPT分区表安装Server 2008 R2
- 哈希值之逆序数与变进制
- datacolumn 表达式 除数为0
- python学习第11天(2)
- JDK16和JDK8共存与切换
- ora257 linux,ORA-00257解决
- matlab画填充直方图,matlab使用imhist、plot、fill画可填充颜色连续直方图
- ps景观平面图转鸟瞰图_怎么用 PS 做景观平面图?
- win10笔记本电脑耳机没反应,耳机没声音的解决方法
- CVPR 2016目标检测
- 神经网络及其变种串联
- Windows10版本即将终止服务请立即重启