BZOJ 1419: Red is good
Sol
期望DP.
\(f[i][j]\) 表示剩下 \(i\) 张红牌, \(j\) 张黑牌的期望.
有转移方程.
\(f[i][j]=0,i=0\) 没有红色牌了,最优方案就是不再翻了.
\(f[i][j]=i,j=0\) 只剩下红色牌了,那就全部翻完啊.
\(f[i][j]=max\{ 0,\frac{i}{i+j}(f[i-1][j]+1)+\frac{j}{i+j} (f[i][j-1]-1)\}\) 翻到红色的概率是 \(\frac{i}{i+j}\) ,翻到黑色的概率是 \(\frac{j}{i+j}\) ,并且要取个下界 \(0\) .
精度很吃屎.
Code
/**************************************************************
Problem: 1419
User: BeiYu
Language: C++
Result: Accepted
Time:1408 ms
Memory:1352 kb
****************************************************************/ #include<cstdio>
#include<iostream>
using namespace std;
#define N 5005
double f[2][N];int r,b,cur;long long tmp;
int main(){
scanf("%d%d",&r,&b);
for(int i=0;i<=r;i++){
for(int j=0;j<=b;j++){
if(!i) f[cur][j]=0;else if(!j) f[cur][j]=i;
else f[cur][j]=max(0.0,(i*(1+f[cur^1][j])+j*(-1+f[cur][j-1]))/(i+j));
}cur^=1;
}tmp=f[cur^1][b]*1e6;
printf("%lld.",(long long)f[cur^1][b]);printf("%06lld\n",tmp%(long long)1e6);
return 0;
}
BZOJ 1419: Red is good的更多相关文章
- bzoj 1419 Red is good - 动态规划 - 概率与期望
Description 桌面上有R张红牌和B张黑牌,随机打乱顺序后放在桌面上,开始一张一张地翻牌,翻到红牌得到1美元,黑牌则付出1美元.可以随时停止翻牌,在最优策略下平均能得到多少钱. Input 一 ...
- BZOJ——1419: Red is good
http://www.lydsy.com/JudgeOnline/problem.php?id=1419 Time Limit: 10 Sec Memory Limit: 64 MBSubmit: ...
- bzoj 1419 Red is good(期望DP)
[题意] R红B蓝,选红得1选蓝失1,问最优状态下的期望得分. [思路] 设f[i][j]为i个Rj个B时的最优期望得分,则有转移式为: f[i][j]=max{ 0,(f[i-1][j]+1)*(i ...
- BZOJ 1419 Red is good ——期望DP
定义f[i][j]表示还剩i张红牌,j张黑牌的时候能取得的期望最大值 显然有$f[i][j]=max(0,\frac {i}{i+j}(f[i-1][j]+1)+ \frac {j}{i+j}(f[i ...
- BZOJ 1419: Red is good 期望dp
数学期望可以理解成一个 DAG 模型. Code: #include <bits/stdc++.h> #define N 5003 #define ll long long #define ...
- 【BZOJ 1419】1419: Red is good (概率DP)
1419: Red is good Time Limit: 10 Sec Memory Limit: 64 MBSubmit: 807 Solved: 343 Description 桌面上有R张 ...
- 【BZOJ 1419】Red is good [概率DP]
我 是 Z Z 概率好玄啊(好吧是我太弱.jpg Description 桌面上有R张红牌和B张黑牌,随机打乱顺序后放在桌面上,开始一张一张地翻牌,翻到红牌得到1美元,黑牌则付出1美元.可以随时停止翻 ...
- 【BZOJ】1419 Red is good
[算法]期望DP [题解]其实把状态表示出来就是很简单的期望DP. f[i][j]表示i张红牌,j张黑牌的期望. i=0时,f[0][j]=0. j=0时,f[i][0]=i. f[i][j]=max ...
- Red is good(bzoj 1419)
Description 桌面上有R张红牌和B张黑牌,随机打乱顺序后放在桌面上,开始一张一张地翻牌,翻到红牌得到1美元,黑牌则付出1美元.可以随时停止翻牌,在最优策略下平均能得到多少钱. Input 一 ...
随机推荐
- JavaWeb学习笔记——Tomcat数据源
server.xml配置数据帐号和密码等
- ubuntu下Eclipse下添加GBK编码
把Windows下的工程导入到了Linux下Eclipse中,由于以前的工程代码,都是GBK编码的(Windows下的Eclipse 默认会去读取系统的编码,所以Widnwos下的Eclipse的编码 ...
- Ubuntu PostgreSQL安装和配置
一.安装 1.安装 使用如下命令,会自动安装最新版,这里为9.5 sudo apt-get install postgresql 安装完成后,默认会: (1)创建名为"postgres&qu ...
- 关于软件工程个人作业 Word frequency program 的总结
一.预计花在程序各部分的时间: (1)对所给命令行参数的判断和处理,看它是否合法.是哪种模式.预计用时20min; (2)关于目录操作:遍历给定目录下的所有文件,包括子目录和非目录文件.预计用时40m ...
- Comet、SSE、技术
1.概念: 利用长时间保留的HTTP请求(‘挂起的GET’)来让服务器向浏览器推送数据的技术,经常被称为Comet. SSE让服务器可以向客户端流式发送文本消息,比如服务器上生成的实时通知或更新.
- thinkphp模板引擎
$this->assing('result'.$result) html页面代码 <foreach name='result item='vo'> <div>{$vo[' ...
- php上传$_FILES 无法取值
无法取值的主要原因在form. 代码 <form method="post" action="****" name="theForm" ...
- GMU 简单使用一
<!doctype html> <html> <head> <title>iOS7风格的进度条</title> <meta chars ...
- Redis学习——SDS字符串源码分析
0. 前言 这里对Redis底层字符串的实现分析,但是看完其实现还没有完整的一个概念,即不太清楚作者为什么要这样子设计,只能窥知一点,需要看完redis如何使用再回头来体会,有不足之处还望告知. 涉及 ...
- 【MVC5】画面多按钮提交
画面上有个多个按钮时,如何绑定到各自的Action上? 1.追加如下MultipleButtonAttribute类 1 using System; 2 using System.Reflection ...