博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【LibreOJ】【LOJ】#6217. 扑克牌
阅读量:6259 次
发布时间:2019-06-22

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

【题意】给定一叠n张扑克牌和各自的ai,bi。每次可以从最上面拿走连续atop张并获得btop的价值,或是把top放到最底,求最大价值。

【算法】背包DP

【题解】本题最大的特点:atop的需求与牌的顺序无关,也即是说可以将拿走连续atop张视为拿走atop张,对于你连续的牌中你不想拿走的只需要找机会拿掉就可以了。

这样问题就转换为背包总空间n,每件物品空间ai,价值bi,求最大价值。

#include
int f[1010],n,u,v;int main(){ scanf("%d",&n); for(int i=1;i<=n;i++){ scanf("%d%d",&u,&v); for(int j=n;j>=u;j--)if(f[j-u]+v>f[j])f[j]=f[j-u]+v; } printf("%d",f[n]);}
View Code

 

转载于:https://www.cnblogs.com/onioncyc/p/7413008.html

你可能感兴趣的文章
浏览器推荐 --- 搜狗浏览器
查看>>
感冒 类型
查看>>
DataGridView 清空数据
查看>>
iis网站发布相关问题
查看>>
信息安全实验四:information-security
查看>>
【CF1141E】Superhero Battle
查看>>
ssh登录一段时间后断开的解决方案
查看>>
【BZOJ3534】【Luogu P3317】 [SDOI2014]重建 变元矩阵树,高斯消元
查看>>
Ubuntu常用命令大全
查看>>
ScheduledExecutorService 定时任务,线程
查看>>
《C++ Primer Plus》读书笔记之三—循环与关系表达式
查看>>
vueJs2.0学习笔记(三)
查看>>
run in thread
查看>>
[HNOI2019]校园旅行
查看>>
vue实现菜单切换
查看>>
Java Web学习总结(28)——Java Web项目MVC开源框架SSH和SSM比较
查看>>
Maven学习总结(30)——Maven项目通用三级版本号说明
查看>>
如何提高iOS开发技能
查看>>
cocos2d-x HelloWorld 代码一撇
查看>>
2015.4.17专线割接
查看>>