AcWing 734. 能量石

#include<cstdio>
#include<algorithm>
#include<cstring>
#include<iostream>using namespace std;
const int N = 500007;struct node{int s, e, l;bool operator<(const node &t)const {return s * t.l < t.s * l;}
}a[N];int f[N];
int n, m, T;int main(){int cnt = 0;scanf("%d", &T);while(T -- ){memset(f, 0xcf, sizeof f);scanf("%d", &n);m = 0;for(int i = 1; i <= n; ++ i){scanf("%d%d%d", &a[i].s, &a[i].e, &a[i].l);m += a[i].s; }sort(a + 1, a + 1 + n);f[0] = 0;for(int i = 1; i <= n; ++ i)for(int j = m; j >= a[i].s; -- j){f[j] = max(f[j], f[j - a[i].s] + max(0, a[i].e - (j - a[i].s) * a[i].l));}int ans = 0;for(int i = 1; i <= m; ++ i)ans = max(ans, f[i]);printf("Case #%d: %d\n", ++cnt, ans);}return 0;
}

例题:国王游戏,耍杂技的牛

AcWing 734. 能量石 (01背包)+(贪心 - 领项交换)相关推荐

  1. Acwing 734. 能量石

    贪心(微扰) + dp 这道题还是比较难的,前置知识: 贪心的微扰(邻项交换)证法,例题:国王游戏,耍杂技的牛 01背包 算法1:暴力\(O(T * n! * n)\) 可以\(dfs\)全排列枚举所 ...

  2. 【ACWing】734. 能量石

    题目地址: https://www.acwing.com/problem/content/736/ 岩石怪物杜达生活在魔法森林中,他在午餐时收集了 N N N块能量石准备开吃.由于他的嘴很小,所以一次 ...

  3. HDU -2546饭卡(01背包+贪心)

    这道题有个小小的坎,就是低于5块不能选,大于5块,可以任意选,所以就在初始条件判断一下剩余钱数,然后如果大于5的话,这时候就要用到贪心的思想,只要大于等于5,先找最大的那个,然后剩下的再去用背包去选择 ...

  4. HDU - 最大报销额(01背包|贪心)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1864 Time Limit: 1000/1000 MS (Java/Others) Memory Li ...

  5. 能量石(贪心+DP)

    传送门:能量石 相关题目:耍杂技的牛,国王游戏 思路:由贪心可证得相邻两个能量石的顺序不同时获得的收益也是不同的,所以需要s*x.l<x.s*l 之后则是一个01背包问题,需要注意这里f[j]的 ...

  6. 【ZOJ - 3703】Happy Programming Contest(带优先级的01背包,贪心背包)

    题干: In Zhejiang University Programming Contest, a team is called "couple team" if it consi ...

  7. 【HDU - 2546】饭卡 (dp,0-1背包,贪心思想)

    电子科大本部食堂的饭卡有一种很诡异的设计,即在购买之前判断余额.如果购买一个商品之前,卡上的剩余金额大于或等于5元,就一定可以购买成功(即使购买后卡上余额为负),否则无法购买(即使金额足够).所以大家 ...

  8. 贪心算法 0-1背包c语言,贪心算法0-1背包问题(算法实验代码).pdf

    . 实验三. 0-1 背包问题(贪心算法) 实验代码: #include int max(int a,int b) { if(a>b) return a; else return b; } vo ...

  9. Dream City(01背包+小贪心)acm寒假集训日记21/12/30

    题目如下: AC代码如下: #include<iostream> #include<algorithm> #include<cstring> #include< ...

最新文章

  1. python 高阶函数
  2. java jvm崩溃_IObjects java 代码导致jvm崩溃了
  3. Taro+react开发(43)重新渲染置空
  4. MyBatis复习(四):#{}占位符与SQL传参
  5. 周末之个人杂想(四)
  6. 苹果正在研发iPhone检测抑郁症功能
  7. Hadoop社区正式支持腾讯云COS,全球大数据开发者将无缝使用中国云存储
  8. 作词家下岗系列:教你用 AI 做一个写歌词的软件!
  9. 如何导出mysql数据库
  10. vm安装win7系统
  11. 360全景拍摄中相机的白平衡设置
  12. 数字温度传感器DS18B20中文资料(含读写程序)-
  13. Ubuntu18.04 安装NVIDIA英伟达驱动教程
  14. Linux虚拟机在线添加GPT格式硬盘
  15. ISO26262解析(四)——FMEDA
  16. python在线翻译小程序_Python爬虫学习之翻译小程序
  17. androidStudio配置安装git以及下载项目
  18. 个性JavaScript特效页面大全
  19. Python根据手机号码批量获取归属地/区号/邮编/运营商
  20. ​LeetCode刷题实战69:x 的平方根

热门文章

  1. 计算机视觉 | 哥大读博五年总结
  2. 点云及三维图像处理综述
  3. 基于3D深度视觉的人体姿态估计算法
  4. 超详干货!Linux 环境变量配置全攻略
  5. 计算机视觉四大基本任务(分类、定位、检测、分割)
  6. 第六篇:Feedforward Networks 前向网络
  7. RedHat使用163源
  8. 十八、oracle 角色
  9. 《转》十种更好的表达“你的代码写的很烂”的方法
  10. 利用frp进行内网穿透