题解

这是一个经典的概率DP模型

设\(f_{i,j}\)表示考虑到前\(i\)张牌,有\(j\)轮没打出牌的可能性,那么显然\(f_{0,r} = 1\)。

考虑第\(i+1\)张牌,他可能在剩下的\(J\)轮里打出,也可能都打不出。那么显然有两种转移。

\(f[i+1][j]+=f[i][j]*(1-p[i+1])^j\) 和 \(f[i+1][j-1]+=f[i][j]*(1-(1-p[i+1])^j)\)

在进行第二种转移的时候,我们把添加的值乘上他的伤害累加进答案

#include<cstdio>
#include<cstring>
const int maxn = 225;
double pw[maxn][maxn];
double ans,p[maxn];
double f[maxn][maxn];
int T,n,r,d[maxn];
inline void prelude() {scanf("%d%d",&n,&r);for(int i = 1;i<=n;++i) scanf("%lf%d",p+i,d+i);for(int i = 1;i<=n;++i) pw[i][0]=1;for(int i = 1;i<=n;++i) {for(int j = 1;j<=r;++j) {pw[i][j]=(1-p[i])*pw[i][j-1];}}
}
inline int solve() {ans = 0;memset(f,0,sizeof f);f[0][r]=1;for(int i = 0;i<n;++i) {for(int j = r;j;--j) {f[i+1][j]+=f[i][j]*pw[i+1][j];if(j>=1) {f[i+1][j-1]+=f[i][j]*(1-pw[i+1][j]);ans+=f[i][j]*(1-pw[i+1][j])*d[i+1];}}}printf("%.10lf\n",ans);
}
int main() {scanf("%d",&T);while(T--){prelude();solve();}return 0;
}

转载于:https://www.cnblogs.com/Syameimaru/p/10056638.html

【文文殿下】[BZOJ4008] [HNOI2015] 亚瑟王相关推荐

  1. BZOJ-4008: [HNOI2015]亚瑟王 (概率期望DP)

    4008: [HNOI2015]亚瑟王 Time Limit: 20 Sec  Memory Limit: 512 MBSec  Special Judge Submit: 1627  Solved: ...

  2. 概率DP——BZOJ4008 [HNOI2015]亚瑟王

    [HNOI2015]亚瑟王 Description 小 K 不慎被 LL 邪教洗脑了,洗脑程度深到他甚至想要从亚瑟王邪教中脱坑.他决定,在脱坑之前,最后再来打一盘亚瑟王.既然是最后一战,就一定要打得漂 ...

  3. BZOJ4008. [HNOI2015]亚瑟王 期望概率dp

    看到这道题想什么? 一个好转移的状态由于T最多444所以把每个点控制在O(400000)以内,所以对于n和r最多乘一次因此猜f[n][r],f[r][n],首先一轮一轮的搞不好转移,那么先想一想f[n ...

  4. P3239 [HNOI2015]亚瑟王(巧妙的概率dp)

    P3239 [HNOI2015]亚瑟王 乍一看很难下手,第iii张牌是否发动和前面的牌是否发动相关 但是我们发现每张牌最多只会发动一次 假设我们算出了g[i]g[i]g[i]表示第iii张牌在所有的r ...

  5. [HNOI2015]亚瑟王

    题目描述 小 K 不慎被 LL 邪教洗脑了,洗脑程度深到他甚至想要从亚瑟王邪教中脱坑.他决定,在脱坑之前,最后再来打一盘亚瑟王.既然是最后一战,就一定要打得漂亮.众所周知,亚瑟王是一个看脸的游戏,技能 ...

  6. P3239 [HNOI2015]亚瑟王(期望)

    解析 显然可以利用期望的线性性对每张牌单独计算贡献. 现在的关键就是如何求出每张牌被使用的概率. 考虑第 iii 张牌,如果它的前面 [1,i−1][1,i-1][1,i−1] 中有 jjj 张牌被使 ...

  7. 【BZOJ4008】亚瑟王,概率DP

    Time:2016.08.25 Author:xiaoyimi 转载注明出处谢谢 传送门 思路: 为啥概率题都这么恶心啊woc 一开始的时候想了两种DP方法,都不合适 主要原因是所有卡牌的触发概率和不 ...

  8. 【BZOJ4008】【HNOI2015】亚瑟王(DP,期望概率)

    Description 小 K 不慎被 LL 邪教洗脑了,洗脑程度深到他甚至想要从亚瑟王邪教中脱坑.他决定,在脱坑之前,最后再来打一盘亚瑟王.既然是最后一战,就一定要打得漂亮.众所周知,亚瑟王是一个看 ...

  9. 【BZOJ4008】【HNOI2015】亚瑟王 [期望DP]

    亚瑟王 Time Limit: 20 Sec  Memory Limit: 512 MB [Submit][Status][Discuss] Description 小 K 不慎被 LL 邪教洗脑了, ...

最新文章

  1. 50 行 Python 代码,带你追到最心爱的人
  2. 死里逃生!国足2:1逆转泰国队晋级亚洲杯八强
  3. UA MATH564 概率论 Dirichlet分布
  4. ABAP 通过sumbit调用另外一个程序使用job形式执行-简单例子
  5. Hbase(2)——基础语句(2)
  6. [机器学习] 分类 --- Naive Bayes(朴素贝叶斯)
  7. JavaScript中encodeURI,encodeURIComponent与escape的注意
  8. Buffers, windows, and tabs
  9. vue抽屉_VUE组件 之 Drawer 抽屉
  10. Excel单元格“删除线”的添加与删除
  11. opython3l_python之 数据类型判定与类型转换
  12. es中对标mysql group by的teams聚合类型
  13. EMNLP 2022 和 COLING 2022,投哪个会议比较好?
  14. 科学家查明北京雾霾6大主要贡献源
  15. 【老生谈算法】matlab实现小波分析源码——小波分析
  16. 常见的激励函数和损失函数
  17. php生成流水号,生成唯一流水号
  18. 关系数据库与对象数据库
  19. FDD LTE对称吗?
  20. 如何更新TeamViewer电脑客户端?

热门文章

  1. nodejs的koa中cookie和session的使用,cookie和session的区别
  2. 图解FFMPEG打开媒体的函数avformat_open_input
  3. 怎么调用新建模型里文章的内容_读完这篇文章,再难的建筑模型你都能快速上手...
  4. wgan 不理解 损失函数_GAN:「太难的部分我就不生成了,在下告退」
  5. String split分隔符总结
  6. 【luogu1337】【JSOI2004】平衡点 / 吊打XXX(模拟退火)
  7. 【HAOI2008】【BZOJ1045】糖果传递(环形纸牌均分,前缀和)
  8. 计算机学硕缩招,专硕扩招、学硕缩招!又有院校初试科目改了!本周这些院校发布最新消息!...
  9. redis list设置过期时间_面试官:你在Redis中设置过带过期时间的Key吗?
  10. 数学知识与计算机科学中的应用,浅谈计算机科学技术在数学思想中的应用