【JZOJ 4693】疯狂的火神
来源:互联网 发布:好听的淘宝昵称女生 编辑:程序博客网 时间:2024/05/01 02:19
Description
火神为了检验zone的力量,他决定单挑n个人。
由于火神训练时间有限,最多只有t分钟,所以他可以选择一部分人来单挑,由于有丽子的帮助,他得到了每个人特定的价值,每个人的价值由一个三元组(a,b,c)组成,表示如果火神在第x分钟单挑这个人(x指单挑完这个人的时间),他就会得到a-b*x的经验值,并且他需要c分钟来打倒这个人。
现在火神想知道,他最多可以得到多少经验值,由于火神本来就很笨,进入zone的疯狂的火神就更笨了,所以他希望你来帮他计算出他最多可以得到多少经验值。
Solution
假设我们现在已经做出了一个选的序列,现在我们要使它最优,
相邻的两项,我们来考虑是否把它们交换,
如果不交换这两项,损失的贡献是
所有只要判断
所有排一个序后直接做01背包即可,
复杂度:
Code
#include<iostream>#include<cstdio>#include<cstdlib>#include<algorithm>#define fo(i,a,b) for(int i=a;i<=b;i++)#define fod(i,a,b) for(int i=a;i>=b;i--)using namespace std;const int N=1500;int read(int &n){ char ch=' ';int q=0,w=1; for(;(ch!='-')&&((ch<'0')||(ch>'9'));ch=getchar()); if(ch=='-')w=-1,ch=getchar(); for(;ch>='0' && ch<='9';ch=getchar())q=q*10+ch-48;n=q*w;return n;}int m,n,ans;struct qqww{int a,b,c;}a[N]; int f[N*N];bool PX(qqww q,qqww w){return q.b*w.c>w.b*q.c;}int main(){ int _; read(_); while(_--) { read(n),read(m); fill(f,f+m+10,-1); fo(i,1,n)read(a[i].a),read(a[i].b),read(a[i].c); sort(a+1,a+1+n,PX); ans=0; f[0]=0; fo(i,1,n)fod(j,m,0)if(f[j]!=-1&&j+a[i].c<=m)ans=max(ans,f[j+a[i].c]=max(f[j+a[i].c],f[j]+a[i].a-(j+a[i].c)*a[i].b)); printf("%d\n",ans); } return 0;}
0 0
- 【JZOJ 4693】疯狂的火神
- 【BestCoder Round #59 div.1 B】【JZOJ 4693】 疯狂的火神
- JZOJ.4693【NOIP2016提高A组模拟8.14】疯狂的火神
- JZOJ 4693 疯狂的火神【NOIP2016提高A组模拟8.14】
- 疯狂的火神题解
- 【JZOJ4693】疯狂的火神
- JZOJ 4694 火神的鱼
- 【JZOJ 4694】【HDU 5283】火神的鱼
- 【HDU 5283】【JZOJ 4694】 火神的鱼
- NOIPの模拟_2016_8_14_t2_疯狂的火神
- 【BestCoder Round #59 (div.1) B】【疯狂的火神】
- JZOJ4693. 【NOIP2016提高A组模拟8.14】疯狂的火神
- 【NOIP2016提高A组模拟8.14】疯狂的火神
- 【NOIP2016提高A组模拟8.14】疯狂的火神
- 【BestCoder Round #59 (div.1) B】疯狂的火神
- 疯狂的火神【NOIP2016提高A组模拟8.14】
- 【BestCoder Round #59 (div.1) B】【JZOJ4693】疯狂的火神
- JZOJ.4694【NOIP2016提高A组模拟8.14】火神的鱼
- React Native应用部署/热更新-CodePush最新集成总结
- 实施数据库审计-DBA负责的安全和审计工作以及标准数据库审计
- 织梦dedecms内容页如何调用作者头像和其他信息
- 一种不能进行gpu加速的折中方法
- 7、Java类集
- 【JZOJ 4693】疯狂的火神
- 整体二分&CDQ分治:[BZOJ2527][POI2011] meteors [BZOJ3295][CQOI2011] 动态逆序对
- Linux下tomcat启动正常,无法访问
- there are no packages available for installation插件安装问题和如何配置浏览器的快捷键
- 总有一天你将破蛹而出
- 常用的dos命令
- React Native布局详细指南
- String和StringBuffer效率比较
- 2015~2020年中国房价走势