【ZCMU1919】kirito's 星爆气流斩(多重背包)
题目链接
1919: kirito's 星爆气流斩
Time Limit: 2 Sec Memory Limit: 128 MB
Submit: 181 Solved: 49
[Submit][Status][Web Board]
Description
主角kirito是使用世界首款完全潜行游戏“刀剑神域(Sword Art Online)”的玩家。曾经很幸运的参与过封闭测试,并买下正式版的kirito,正准备体验游戏的第一次正式营运。但在登入后不久,kirito发现“登出”指令竟然消失,而与此同时自称是SAO游戏设计者“茅场晶彦”的人说:“无法完成攻略就无法离开游戏,只有打倒位于“艾恩葛朗特”顶楼,第100层的头目-达成“完全攻略”才是离开这个世界唯一的方法。并且,在游戏内GAME OVER或是尝试脱下NERvGear,玩家会立刻被NERvGear发出的高频率微波破坏脑部而死亡。”唯有接受这个矛盾事实的人,才能够存活下去。
自己也被卷入其中的kirito,在游戏的舞台——巨大浮游城堡“艾恩葛朗特”里,以不与人组队的独行剑士身份,逐渐崭露头角,并获得“黑色剑士”的称号。kirito以完全攻略的条件——到达城堡最上层为目标,持续进行严酷且漫长的冒险,在这期间他邂逅了女性细剑使——“闪光”亚丝娜,以及公会“血盟骑士团团长”希兹克利夫,他的命运也一步步产生了巨大的变化。kirito能否从游戏里全身而退……
由于kirito是封弊者,kirito有一个二刀流技能,可以使用星曝气流斩,斩杀了强大的守关BOSS。
但是星曝气流斩需要很庞大的法力值。
现在商店有N个药品,kirito的物品栏有W的容量。
第i个药品有重量w_i,可以恢复法力值v_i,有数量c_i个。
现在请你帮助kirito计算他可以恢复的最大法力值。
Input
第一行两个整数N,W(1 <= N <= 300,1 <= W <= 500000 )
接下来N行,每行三个整数w_i,v_i,c_i(1 <= w_i <= 10000,1 <= v_i <= 10000, 1 <= c_i <= 500)
Output
输出一个整数
Sample Input
3 6
2 2 5
3 3 8
1 4 1
Sample Output
9
HINT
Source
czq
解题思路:
因为每件物品为有限件,所以是多重背包问题。要用二进制将物品的件数进行拆分然后转化为01背包,不然估计会超时。
代码:
#include<bits/stdc++.h>
using namespace std;
int dp[5000005];
int main()
{int n,W,wi,vi,c,i,j;scanf("%d%d",&n,&W);vector<int>v;vector<int>w;memset(dp,0,sizeof(dp));for(i=0;i<n;i++){scanf("%d%d%d",&wi,&vi,&c);for(j=1;j<=c;j<<=1){v.push_back(j*vi);w.push_back(j*wi);c=c-j;}if(c>0){v.push_back(c*vi);w.push_back(c*wi);}}for(i=0;i<v.size();i++){for(j=W;j>=w[i];j--){dp[j]=max(dp[j-w[i]]+v[i],dp[j]);}}printf("%d\n",dp[W]);return 0;}
【ZCMU1919】kirito's 星爆气流斩(多重背包)相关推荐
- 1919: kirito's 星爆气流斩 多重背包
Description 主角kirito是使用世界首款完全潜行游戏"刀剑神域(Sword Art Online)"的玩家.曾经很幸运的参与过封闭测试,并买下正式版的kirito,正 ...
- ZCMU-1919 kirito's 星爆气流斩(多重背包+二进制优化)
Problem C: kirito's 星爆气流斩 Time Limit: 2 Sec Memory Limit: 128 MB Submit: 148 Solved: 37 [Submit][S ...
- zcmu Problem C: kirito's 星爆气流斩(背包+二进制优化)
[题目] Problem C: kirito's 星爆气流斩 Time Limit: 2 Sec Memory Limit: 128 MB Submit: 143 Solved: 34 [Subm ...
- ZCMU 1919: kirito's 星爆气流斩(多重背包+二进制优化)
1919: kirito's 星爆气流斩 Time Limit: 2 Sec Memory Limit: 128 MB Description 主角kirito是使用世界首款完全潜行游戏" ...
- ZCMU 1919 :kirito's 星爆气流斩 (多重背包问题)
1919: kirito's 星爆气流斩 Time Limit: 2 Sec Memory Limit: 128 MB Submit: 155 Solved: 41 Description 主角k ...
- ZCMU 1919: kirito's 星爆气流斩【01背包的二进制优化】
ZCMU 1919: kirito's 星爆气流斩 Time Limit: 2 Sec Memory Limit: 128 MB Description 主角kirito是使用世界首款完全潜行游戏& ...
- zcmu 1919: kirito's 星爆气流斩
1919: kirito's 星爆气流斩 Time Limit: 2 Sec Memory Limit: 128 MB Description 主角kirito是使用世界首款完全潜行游戏"刀 ...
- 1919: kirito's 星爆气流斩(多重背包转换为01背包+二进制优化)
Description 主角kirito是使用世界首款完全潜行游戏"刀剑神域(Sword Art Online)"的玩家.曾经很幸运的参与过封闭测试,并买下正式版的kirito,正 ...
- zcmu 1919 kirito's 星爆气流斩(多重背包转01背包,并且进行2进制优化)
思路:明显的背包问题,并且是多重背包,多重背包有两种思路 思路1:当成一种新情况考虑,因为有个数的限制所以跟完全背包不一样的地方在于状态转移方程应该是dp[i]=max{dp[i],dp[i-k*w[ ...
最新文章
- vs显示不是有效的window32_玩转“黑科技”,这才是选购“户外显示屏”的正确方式!...
- springboot配置html资源路径,SpringBoot普通.html文件视图配置
- android纯白背景加灰,Android背景颜色设置为灰色而不是@android:颜色/白色
- 24dian(牛客多校第三场)
- 前端学习(1341):mongoose验证规则延伸
- poll/epoll/keyed-poll/keyed-epoll的唤醒--分层次的解决方案
- java epoch times_Java 8新特性探究(七)深入解析日期和时间
- 报错信息:NoReverseMatch at / 'blog' is not a registered namespace
- sscanf和sprintf的高级用法
- narwal无法连接机器人_库卡机器人控制系统主机出现MFC3故障维修
- 运行 Java、Python、Go 等 25 种代码后,发现性能最强的竟然是它!
- ubuntu 安装 sublime
- python做var模型的滞后阶数怎么确定_VAR模型滞后阶数
- 使用mbw测试内存带宽性能
- 解决:关于电脑访问百度很慢的问题
- 【转】预装Win8/8.1 中文版系统升级为专业版或专业版含媒体中心版的简单方法...
- js:如何删除dom元素
- 用cocos2dx做一个简单的单机捕鱼达人游戏(6)结束告辞
- ssconvert 安装_使用Gnumeric ssconvert将ods文件转换为csv文件时替换或忽略换行符
- CZCW紫色表白墙源码v1.0.2 PHP程序
热门文章
- 机器人总动员拟人_《机器人总动员》从三个角度解析这部电影带给我们的思考与感动...
- 【简单入门】ChatGPT prompt engineering (中文版)笔记 |吴恩达ChatGPT 提示工程
- 基于51单片机的简易减法器设计制作
- 锁相环 matlab 噪声,锁相环(PLL)系统的噪声特性
- Excel合并单元格排序
- Golang 的 mgo 连接池
- if……else if……else注意事项与基本用法
- 按Backspace键删除时,会出现^H
- 脚本恢复Win10照片查看器
- 控制 input 输入框不能输入中文,即不能在输入框中使用输入法