Red is good
来源:互联网 发布:铝合金下料软件 编辑:程序博客网 时间:2024/04/30 14:30
问题 J: Red is good
时间限制: 1 Sec 内存限制: 64 MB题目描述
桌面上有R张红牌和B张黑牌,随机打乱顺序后放在桌面上,开始一张一张地翻牌,翻到红牌得到1美元,黑牌则付出1美元。可以随时停止翻牌,在最优策略下平均能得到多少钱。
输入
一行输入两个数R,B,其值在0到5000之间
输出
在最优策略下平均能得到多少钱。
样例输入
5 1
样例输出
4.166666
提示
输出答案时,小数点后第六位后的全部去掉,不要四舍五入.
f[i][j] 还剩i张红 j张黑可得最大价值
i==0 0
j==0 i
else f[i][j]=max(0,i/(i+j)*(1+f[i-1][j])+j/(i+j)*(-1+f[i][j-1]));
#include<iostream>#include<cmath>#include<cstring>#include<cstdio>#include<queue>#include<map>#include<cstdlib>#include<algorithm>#define V 5090#define LL long longusing namespace std;double f[2][V];int n,m;inline int haha(){ //freopen("in.txt","r",stdin); cin>>n>>m; double x,y; int num=0; for(int i=0;i<=n;i++) { num^=1; for(int j=0;j<=m;j++) { if(i==0) { f[num][j]=0;continue;}if(j==0){ f[num][j]=i;continue;} x=i;y=j; f[num][j]=max(0.0,x/(x+y)*(1+f[num^1][j])+y/(x+y)*(-1+f[num][j-1])); } } double xx=0.0000005; f[num][m]-=xx;printf("%.6lf",f[num][m]); //cout<<f[n][m];return 0; }int gg=haha();int main(){;}
阅读全文
0 0
- Red is good (DP)
- [HbFS-]Red is good
- [HbFS-]Red is good
- oj_470 Red is good
- bzoj1419: Red is good
- Bzoj1419 Red is good
- Red is good
- bzoj 1419: Red is good
- BZOJ 1419 Red is good
- BZOJ 1419: red is good
- 【BZOJ】1419 Red is Good
- 作业6:Red is Good
- 概率DP RED IS GOOD
- 【BZOJ】【P1419】【Red is good】【题解】【DP】
- BZOJ 1419 Red is good 期望DP
- BZOJ 1419: Red is good|期望Dp
- 【bzoj1419】Red is good 期望dp
- bzoj 1419: Red is good 期望dp
- 码猿之道
- [Noip2015] 信息传递
- vux
- 二项分布均值,方差推导
- 控制台设置中文和窗口大小
- Red is good
- Java之POI生成Excel强制换行-yellowcong
- jvm
- bzoj 2004: [Hnoi2010]Bus 公交线路
- Laravel源码分析——一次Http请求到响应
- 2.3.3 链表
- 无线联网技术
- iOS使用UITableView实现的富文本编辑器
- 基于深度学习的目标检测技术演进:R-CNN、Fast R-CNN、Faster R-CNN