• 题目
  • 题解
  • 代码

题目

mxy沉迷于一个辣鸡游戏不可自拔。
为了加强角色的实力,mxy决定重新买一套装备。已知现在有n件装备,每件装备会提供一定的物理抗性和魔法抗性,并需要一定的价钱。mxy想要保证至少有a的物抗和b的魔抗,请你计算出满足条件所需的最少金额。(装备不可重复购买)

题解

二维费用的背包问题
对于每件物品,具有两种不同的费用;选择这件物品必须同时付出着两种代价;对于每种代价都有一个可付出的最大值。问怎样选择可以得到最大值。

设f[i,j,k]表示前i件物品付出两种代价分别为j和k时可获得的最大值(最小值)。方程就是:f[i,j,k]=max/min(f[i-1,j,k],f[i-1,j-a[i],k-b[i]]+v[i]).
也可以只是用二维的数组:当每件物品只可以取一次时变量j和k采用逆序的循环,当物品可以取无限次时采用顺序的循环

在本题中,当j+a[i]>A时,j+a[i]当成A,B同理。
时间复杂度O(a*b*n)

代码

vara,b,n,i,j,k,c,d:longint;w,m,v:array[1..1000]of longint;f:array[0..100,0..100]of longint;
beginreadln(a,b);readln(n);fillchar(f,sizeof(f),$7);for i:=1 to n doreadln(w[i],m[i],v[i]);f[0,0]:=0;for i:=1 to n dofor j:=a downto 0 dofor k:=b downto 0 dobeginc:=j+w[i];d:=k+m[i];if c>a then c:=a;if d>b then d:=b;if f[j,k]+v[i]<f[c,d] then f[c,d]:=f[j,k]+v[i];end;writeln(f[a,b]);
end.

5.16特长生模拟题 买装备相关推荐

  1. 5.16特长生模拟题 遭遇战

    题目 题解 代码 题目 ------------------------ mxy沉迷于一个辣鸡游戏不可自拔. 游戏地图是一个n*n的矩形,左上角为(0,0),右下角为(n-1,n-1).mxy与对手同 ...

  2. 计算机cpu的速度越来越快 这导致,计算机一级笔试模拟题(1-6)

    计算机一级笔试模拟题(1-6) <计算机知识及应用初步>笔试模拟题(一) (考试时间60分钟) 班级 学号 姓名 说明: ① 本试卷全部为选择题,每题可供选择的答案中,只有一个正确答案. ...

  3. 闵梓轩大佬のnoip模拟题D1 总结 2017/10/26

    背景 题目概括 T1 题面 分析 90分算法 满分算法 T2 题面 分析 部分分算法 满分算法 满分代码 T3 题面 分析 代码 总结 背景 这道题目是去年的金牌大佬闵梓轩在一年前出的一套noip模拟 ...

  4. 中国地质大学(北京) 研究生 2022秋《Python科学计算》期末考试 模拟题2 题目+参考答案

    另一套模拟题1: 期末考试 模拟题1 考试方法 浏览器(Chrome.火狐)登录PTA网址: pintia.cn,单击右上角"登录->考试登录",下拉菜单输入cugb 选择& ...

  5. 1 23 456c语言,2014年计算机二级考试C语言模拟题(1)

    2014年计算机二级考试C语言模拟题(1) 21.下列程序的运行结果为( ). #include main() {struct date {int year,month,day; }today; pr ...

  6. Scratch青少年编程能力等级测试模拟题(三级)

    青少年编程竞赛交流群已成立(适合6至18周岁的青少年),公众号后台回复[Scratch]或[Python],即可进入.如果加入了之前的社群不需要重复加入. 微信后台回复"资料下载" ...

  7. POJ 3030 Nasty Hacks (模拟题)

    题目:http://poj.org/problem?id=3030 思路:模拟题 #include <iostream>using namespace std;int main() {in ...

  8. 职称计算机word模拟题,2015职称计算机考试Word2003模拟题及答案

    1. Word程序启动后就自动打开一个名为(D )的文档. A)Noname B)Untitled C)文件1 D)文档1 2. 可以显示水平标尺和垂直标尺的视图方式是( B ). A)普通视图 B) ...

  9. Uva 11292 The Dragon of Loowater 模拟题

    题目大意:你的王国里有一条有n个头的恶龙,你希望雇一些骑士来把它杀死(即砍掉所有的头).村里有m个骑士可以雇佣,一个能力值为x的骑士可以砍掉恶龙一个直径不超过x的头,且需要支付x个金币.如何雇佣骑士才 ...

最新文章

  1. No module named 'tf_extended'
  2. vue 递归组件多级_Vue递归组件实现树形结构菜单
  3. 快速编辑 Shell 命令行
  4. java分布式面试题之Dubbo部分
  5. python3安装第三方库教程
  6. SQL Server 2005大小写敏感设置
  7. 【原】winform定制datagrid模板
  8. Windows API一日一练(69)GetTickCount函数
  9. 计算机动画电影英语翻译,“动画电影”英语怎么说
  10. 为什么有些公司不招大龄程序员?
  11. Linux重新挂载磁盘,如何把磁盘挂载到已有目录上面
  12. 通过创建Google快讯将定期搜索结果发送到Gmail信箱
  13. 成立一年,手游交叉推广交易社区Chartboost已有8000款游戏加入
  14. 计算机绘图软件应用于哪些领域,解答电脑绘图软件有哪些
  15. 511遇见电脑PC任意多开绿色软件
  16. int argc,char*argv[ ]的简洁解释
  17. (PHP)程序中如何判断当前用户终端是手机等移动终端
  18. 区块链数据资源网站总结
  19. JavaScript mongodb(数据库)简单值
  20. 万用表怎么测量电池容量_万用表怎么检测电池容量_电池电量

热门文章

  1. 【渝粤题库】陕西师范大学192202 信息技术课程与教学论 作业
  2. SwaggerDemo后端接口举例 (附带gitlab下载地址)
  3. Android - 自动系统签名
  4. C语言译密码字符串A变E,C语言经典编程算法
  5. backtrader入坑1
  6. VisualODX——ODX数据自动转换工具
  7. 【复习笔记】线性代数——线性方程组
  8. dos递归遍历目录删log
  9. python学习笔记(18)——Tushare库的安装及基本用法
  10. 7点 讲明白地图切片的概念与原理