bzoj1389
比较有意思的一道题
初看肯定是dp一类,但好像没什么思路,
先令p=1-p q=1-q
如果我们用常见的f[i]到第i次试验最大利润的话
我们发现不好转移,因为影响因素不仅有价格,还有数量
考虑到原料总量一定,我们考虑用c[i]表示到第i次实验最大利润率
不难发现第m次试验,最大利润率一定是a和b那个较大的
边界是从最后确定的,我们考虑倒推
不妨设在第i此实验时,剩下有w克原料,有x*w的原料做a试验,w*(1-x)的原料做b试验 0<=x<=1
则c[i]=(w*a*x+w*(1-x)*b+c[i+1]*(w*p*x+w*(1-x)*q))/w
整理得c[i]=ax+b(1-x)+c[i+1]*p*x+c[i+1]*(1-x)*q
即c[i]=x(a-b+c[i+1]*(p-q))+b+c[i+1]*q
不难发现是关于x的一次函数,要使c[i]最大我们只要判断a-b+c[i+1]*(p-q)是否大于0即可
大于0 x取1,否则取0
然后就搞定了
var c:array[..] of double;
n,m,a,b,i:longint;
p,q:double; begin
readln(m,n,a,b,p,q);
p:=-p;
q:=-q;
for i:=m downto do
if a-b+c[i+]*(p-q)> then c[i]:=a+c[i+]*p
else c[i]:=b+c[i+]*q;
writeln(c[]*n::);
end.
bzoj1389的更多相关文章
随机推荐
- Linux删除除了某些文件之外的所有文件(夹)
例如:删除当前目录下除了.tar.gz和.py结尾的其他文件 shopt -s extglob rm -rf !(*.py|*.tar.gz)
- Linq保留字含义
using System; using System.Query; using System.Collections.Generic; class app { static void Main() { ...
- 定位 position
html结构是fixed包裹relative,relative包裹absolute position:relative;相对定位 a 不影响元素本身的特性 b 不使元素脱离文档流(元素移动之后原始位置 ...
- TCP/IP 协议理解
TCP/IP 协议(Transmission Control Protocol / internet Protocol),因特网互联协议,又名网络通讯协议.通俗而言:TCP负责发现传输的问题,一有问题 ...
- U3D 收藏一个飞机随机运动的方法
文章转载:http://www.manew.com/thread-43578-1-1.html 前面的学习中已经涉及到了随机运动,这一篇主要还是前面的随机运动的改进,不废话直接上效果图吧,对比前面的随 ...
- webrtc学习———记录一
最近导师让研究一下webrtc,希望将来用到我们的ICT2系统中. 但是从来没有过做web的基础,无论前端还是后端,html.js全都从头学起.html还好说,没有太过复杂的东西. js就有点难度了, ...
- .net单元测试——解除依赖
最近在看.net单元测试艺术,我也喜欢单元测试,这里写一下如何在测试中解除对象间的依赖. 假如有这样的一个需求,当用户登陆时,我需要对用户名和密码进行验证,然后再将用户名写入日志中. public c ...
- c语言学习之基础知识点介绍(十):数组
本节主要介绍数组. 一.数组 /* 数组:一个变量可以存n个变量. 语法:类型 数组名[长度(正整数)]; 例如:int score[5];//定义了一个int类型的数组,长度为5,可以保存5个数据. ...
- iOS开发的技能树
1.UI2.多线程 3.网络 4.多媒体 5.存储 6.分布式 7.支付,第三方 8.地图,动画,二维码,打包 9.特效10.apple watch/ apple tv 11.swift 12.web ...
- NSdate 时间格式
NSdate 时间格式 NSTimeInterval 时间间隔 基本单位 秒 NSDateFormatter 时间格式器 用于日期对象的格式化或字符串解析为日期对象 日期格式如下: y 年 M 年 ...