SSL2759 2017年10月6日提高组T2 挖矿(dp)
来源:互联网 发布:如何快速升淘宝等级 编辑:程序博客网 时间:2024/06/05 06:41
2017年10月6日提高组T2 挖矿
Description
Input
Output
分析:正着做显然不可做,因为有后效性所以无法DP,所以我们考虑倒着做我们不难设f[i] 表示i-n 这些星球的最大价值, 那么对于开采型星球f[i]=max(f[i+1],f[i+1]*(1-0.01k)+a[i]),维护型星球类似,然后就可以满分了。
代码
#include <cstdio>#define maxn 200000using namespace std;int a[maxn],n;double f[maxn],b[maxn],k,c,w;double max(double x,double y){ if (x>y) return x; return y;}int main(){ scanf("%d%lf%lf%lf",&n,&k,&c,&w); k=1-0.01*k; c=1+0.01*c; for (int i=1;i<=n;i++) scanf("%d%lf",&a[i],&b[i]); for (int i=n;i>=1;i--) { if (a[i]==1) f[i]=max(f[i+1],f[i+1]*(double)k+b[i]); if (a[i]==0) f[i]=max(f[i+1],f[i+1]*(double)c-b[i]); } f[1]*=w*1.0; printf("%.2lf",f[1]);}
阅读全文
0 0
- SSL2759 2017年10月6日提高组T2 挖矿(dp)
- 2017年10月6日提高组T2 挖矿
- 2017年10月6日提高组T2 挖矿
- SSL2792 2017年10月25日提高组T2 数字问题(数位dp)
- SSl2794 2017年10月26日提高组T2 Dark(dp)
- 【SSLGZ 2794】2017年10月26日提高组T2 Dark(dp)
- SSL2812 2017年10月30日提高组T2 凤凰院凶真(dp,LCIS)
- SSL2811 2017年10月30日提高组T2 摘Galo(树形dp)
- SSL2671 2017年8月8日提高组T2 呀!回文串(dp)
- SSL2674 2017年8月9日提高组T2 覆盖(dp)
- SSL2841 2017年11月7日提高组T2 好路线(dp)
- SSL2843 2017年11月8日提高组T2 拆网线(树形dp)
- SSL2780 2017年10月20日提高T2 收银员(dp)
- 2017年10月6日提高组T2 猫公司
- 2017年10月6日提高组T2 有趣的异或
- SSL2790 2017年10月25日提高组T2 次方的运算(math)
- SSL2793 2017年10月26日提高组T2 Deep(博弈)
- SSL2795 2017年10月26日提高组T2 幸运值(组合)
- ios-collectionView?.deleteItems(at: [indexPath])造成的错误
- (M)Dynamic Programming: 474. Ones and Zeroes
- SylixOS 系统TICK实现
- js与jquery知识点总结(1)
- Plant CodeForces
- SSL2759 2017年10月6日提高组T2 挖矿(dp)
- 多线程之锁机制
- javaWeb-SAX解析和DOM解析并实现CRUD操作
- 一个HelloWorld程序的生成过程
- Android自定义控件(二)
- 杂志社投稿
- 初学python一些会用到的零件2【参考小甲鱼的书学习】
- 正则中需要转义的特殊字符小结
- struts2获取页面参数多数为null