【BZOJ4008】【HNOI2015】亚瑟王 概率DP
链接:
#include <stdio.h>
int main()
{
puts("转载请注明出处[辗转山河弋流歌 by 空灰冰魂]谢谢");
puts("网址:blog.csdn.net/vmurder/article/details/46461649");
}
题解:
f(i,j) 表示分配给第 [i,n] 张牌 j 次机会的期望。
然后 f(i,j)=f(i−1,j)∗(1−pi−1)j)+f(i−1,j+1)∗(1−(1−pi−1)j+1)
总结:
有的时候反过来想,比方求选的概率。记录不选的概率可能会更好一些。
再比方这道题。不从前面递推,而考虑 f(i) 表示 [i,n]。
代码:
#include <cstdio>
#include <cstring>
#include <iostream>
#include <algorithm>
using namespace std;
int n,m;
long double ans;
long double p[233],d[233],f[233][333];
long double power(long double x,int p)
{
long double ret=1.0;
while(p)
{
if(p&1)ret*=x;
x*=x,p>>=1;
}
return ret;
}
int main()
{
freopen("test.in","r",stdin);
int i,j,T;
double a,b;
for(scanf("%d",&T);T--;)
{
memset(f,0,sizeof f);
scanf("%d%d",&n,&m);
for(i=1;i<=n;i++)
{
scanf("%lf%lf",&a,&b);
p[i]=a,d[i]=b;
}
f[0][m]=1.0,ans=0.0;
for(i=1;i<=n;i++)for(j=1;j<=m;j++)
{
f[i][j]=f[i-1][j]*power(1-p[i-1],j)+f[i-1][j+1]*(1-power(1-p[i-1],j+1));
ans+=f[i][j]*(1-power(1-p[i],j))*d[i];
}
printf("%.10lf\n",(double)ans);
}
return 0;
}
【BZOJ4008】【HNOI2015】亚瑟王 概率DP的更多相关文章
- 【bzoj4008】[HNOI2015]亚瑟王 概率dp
题目描述 $n$ 张牌,$r$ 轮游戏,每轮从左向右操作,遇到第 $i$ 张牌有 $p_i$ 的概率选中,选中会产生 $d_i$ 的贡献,丢弃掉该牌并结束这一轮,否则继续下一张.问最终的期望贡献. 输 ...
- BZOJ4008: [HNOI2015]亚瑟王(期望dp)
Time Limit: 20 Sec Memory Limit: 512 MBSec Special JudgeSubmit: 1952 Solved: 1159[Submit][Status] ...
- P3239 [HNOI2015]亚瑟王——概率DP
题面:亚瑟王 最近考试考期望很自闭啊,没做过这种类型的题,只能现在练一练: 所谓期望,就是状态乘上自己的概率:对于这道题来说,我们要求的是每张牌的伤害乘上打出的概率的和: 当然不是直接乘,因为给的是每 ...
- 概率DP——BZOJ4008 [HNOI2015]亚瑟王
[HNOI2015]亚瑟王 Description 小 K 不慎被 LL 邪教洗脑了,洗脑程度深到他甚至想要从亚瑟王邪教中脱坑.他决定,在脱坑之前,最后再来打一盘亚瑟王.既然是最后一战,就一定要打得漂 ...
- 【BZOJ-4008】亚瑟王 概率与期望 + DP
4008: [HNOI2015]亚瑟王 Time Limit: 20 Sec Memory Limit: 512 MBSec Special JudgeSubmit: 832 Solved: 5 ...
- BZOJ4008:[HNOI2015]亚瑟王(DP,概率期望)
Description 小 K 不慎被 LL 邪教洗脑了,洗脑程度深到他甚至想要从亚瑟王邪教中脱坑. 他决定,在脱坑之前,最后再来打一盘亚瑟王.既然是最后一战,就一定要打得漂亮.众所周知,亚瑟王是一个 ...
- 2018.10.13 bzoj4008: [HNOI2015]亚瑟王(概率dp)
传送门 马上2点考初赛了,心里有点小紧张. 做道概率dp压压惊吧. 话说这题最开始想错了. 最开始的方法是考虑f[i][j]f[i][j]f[i][j]表示第iii轮出牌为jjj的概率. 然后用第ii ...
- Bzoj4008 [HNOI2015]亚瑟王
Time Limit: 20 Sec Memory Limit: 512 MBSec Special Judge Submit: 1009 Solved: 605[Submit][Status] ...
- P3239 [HNOI2015]亚瑟王 期望dp
这个题一看就是期望dp,但是我有个问题,一个事件的期望等于他所有事件可能行乘权值的和吗...为什么我有天考试的时候就不对呢...求大佬解释一下. 至于这道题,f[i][j]代表前i个有j个发动技能,这 ...
- P3239 [HNOI2015]亚瑟王 期望 dp
LINK:亚瑟王 Saber!Excalibur! 比较难的期望dp. 可以发现如果暴力枚举所有的局面复杂度很高 . 转换的思路则是 期望的线性性. 求出每张牌的期望累加即可. 考虑每张牌的期望=这张 ...
随机推荐
- 华为上机测试题(数字字符串转二进制-java)
PS:此题满分,可参考 /* * 题目:数字字符串转二进制 * 描述: 输入一串整数,将每个整数转换为二进制数,如果倒数第三个Bit是“0”,则输出“0”,如果是“1”,则输出“1”. 题目类别: ...
- Selenium2+python自动化13-多窗口、句柄(handle)【转载】
前言 有些页面的链接打开后,会重新打开一个窗口,对于这种情况,想在新页面上操作,就得先切换窗口了.获取窗口的唯一标识用句柄表示,所以只需要切换句柄,我们就能在多个页面上灵活自如的操作了. 一.认识多窗 ...
- 最近看点JAVA
这本的书名:<求精要决:JAVA EE编程开发安全精解> 请得很懂 试一下servlet代码: <!DOCTYPE html> <html> <head> ...
- AC日记——Little Elephant and Function codeforces 221a
A - Little Elephant and Function 思路: 水题: 代码: #include <cstdio> #include <iostream> using ...
- 测试工具APPScan安装与使用教程
- 数学【p1658】 购物
题目描述 你就要去购物了,现在你手上有N种不同面值的硬币,每种硬币有无限多个.为了方便购物,你希望带尽量少的硬币,但要能组合出1到X之间的任意值. 分析: 看到题解做法没有说出原理,所以尝试解释一下. ...
- JAVA RandomAccessFile writeBytes
writeBytes public final void writeBytes(String s) throws IOException 按字节序列将该字符串写入该文件.该字符串中的每个字符均按顺序写 ...
- POJ 3420 Quad Tiling (矩阵乘法)
[题目链接] http://poj.org/problem?id=3420 [题目大意] 给出一个4*n的矩阵,求用1*2的骨牌填满有多少方案数 [题解] 弄出不同情况的继承关系,用矩阵递推即可. [ ...
- maven配置memcached.jar
由于目前java memcached client没有官方的maven repository可供使用,因此使用时需要手动将其安装到本地repository. java memcached client ...
- ReactNative学习笔记1 Flexbox布局
一.比例属性flex和布局方向属性flexDirection 例如三个视图的flex属性值分别为2.4.8,则它们的高度比例为2:4:8.,宽度不指定,默认为全屏的宽度. class ZLFReact ...