题目链接

这是一道传统的期望题,可是有一些套路值得我去掌握。

我们用$s$来表示一种状态,就是当前拥有的能量圈,是一个正整数拆分的形式。

用$f_{s}$表示如果遇到果冻鱼后丢掉了最小的能量圈后的状态,对于每一个$s$,$f_{s}$是唯一的。

用$v_{s}$表示随机得到了能量圈后的状态,假设目前还有$mi$种能量圈可选,那就有$mi$种转移。

由于$f_{s}$的能量圈个数一定小于$s$的能量圈个数,所以这是一个树形结构。

可以简单写出$s$的期望的方程式:

$E_{s} = 1 + p * E_{f_{s}} + (1 - p) * \frac{1}{mi} * \sum E_{v_{s}}$。

这里我们发现,当$s$的和大于阈值的时候,$E_{s} = 0$,也就是叶子的贡献和其父亲是没有关系的。

这里有一个套路,就是由于它是一个树,每一个$E_{s}$都可以表示成$k_{s} * E_{f_{s}} + b_{s}$的形式。

于是把上式中的$E_{v_{s}}$展开成$k_{v_{s}} * E_{s} + b_{v_{s}}$。

我们设$g = (1 - p) * \frac{1}{mi}, nk = \sum k_{v_{s}}, nb = \sum b_{v_{s}}$,移项可得:

$(1 - g * nk) * E_{s} = 1 + p * E_{f_{s}} + g * nb$

$E_{s} = \frac{p}{1 - g * nk} E_{f_{s}} + \frac{1 + g * nb}{1 - g * nk}$

所以得到$k_{s} = \frac{p}{1 - g * nk}, b_{s} = \frac{1 + g * nb}{1 - g * nk}$。

叶子的$k,b$都是$0$,于是我们只要从叶子向上推就可以了,能算出每个点的$k,b$,因为它只和儿子有关,而根是没有父亲的,答案就是根节点的$b$。

由于阈值不大,正整数拆分的形式不会太多,复杂度是合理的。

$\bigodot$技巧&套路:

  • 树上高斯消元的特殊性质
#include <cstdio>
#include <algorithm> using namespace std; int n, t, a[];
double p; struct No { double k, b; }; No Dfs(int s, int mi) {
No re = (No){ , };
if (s > t) return re;
double nk = , nb = ;
double np = s? p : , g = ( - np) / mi;
for (int i = ; i < mi; ++i) {
No so = Dfs(s + a[i], i + );
nk += so.k, nb += so.b;
}
re.k = np / ( - g * nk);
re.b = ( + g * nb) / ( - g * nk);
return re;
} int main() {
while (scanf("%lf%d%d", &p, &t, &n) == ) {
for (int i = ; i < n; ++i)
scanf("%d", &a[i]);
sort(a, a + n);
printf("%.3f\n", Dfs(, n).b);
}
return ;
}

【JLOI 2012】时间流逝(期望,树上高斯消元)的更多相关文章

  1. LOJ2542 PKUWC2018 随机游走 min-max容斥、树上高斯消元、高维前缀和、期望

    传送门 那么除了D1T3,PKUWC2018就更完了(斗地主这种全场0分的题怎么会做啊) 发现我们要求的是所有点中到达时间的最大值的期望,\(n\)又很小,考虑min-max容斥 那么我们要求从\(x ...

  2. LOJ 2542 「PKUWC2018」随机游走 ——树上高斯消元(期望DP)+最值反演+fmt

    题目:https://loj.ac/problem/2542 可以最值反演.注意 min 不是独立地算从根走到每个点的最小值,在点集里取 min ,而是整体来看,“从根开始走到点集中的任意一个点就停下 ...

  3. bzoj 2784 [JLOI2012]时间流逝——树上高斯消元

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=2784 一个状态可以加很多个能量圈,但减少能量圈的情况只有一种.所以可以用树来刻画. 然后就变 ...

  4. loj2542 「PKUWC2018」随机游走 MinMax 容斥+树上高斯消元+状压 DP

    题目传送门 https://loj.ac/problem/2542 题解 肯定一眼 MinMax 容斥吧. 然后问题就转化为,给定一个集合 \(S\),问期望情况下多少步可以走到 \(S\) 中的点. ...

  5. 洛谷 P5643 - [PKUWC2018]随机游走(Min-Max 容斥+FWT+树上高斯消元,hot tea)

    题面传送门 一道挺综合的 hot tea,放到 PKUWC 的 D2T2 还挺喜闻乐见的( 首先我们考虑怎样对一个固定的集合 \(S\) 计算答案,注意到我们要求的是一个形如 \(E(\max(S)) ...

  6. BZOJ_3143_[Hnoi2013]游走_期望DP+高斯消元

    BZOJ_3143_[Hnoi2013]游走_期望DP+高斯消元 题意: 一个无向连通图,顶点从1编号到N,边从1编号到M. 小Z在该图上进行随机游走,初始时小Z在1号顶点,每一步小Z以相等的概率随机 ...

  7. NOI.AC省选模拟赛第一场 T1 (树上高斯消元)

    link 很容易对于每个点列出式子 \(f_{x,y}=(f_{x,y-1}+f_{x,y}+f_{x,y+1}+f_{x+1,y})/4\)(边角转移类似,略) 这个转移是相互依赖的就gg了 不过你 ...

  8. [JLOI2012]时间流逝 树上高斯消元 概率期望

    题面 题意:(感觉题面写的题意是错的?)有\(n\)种能量不同的圈,设当前拥有的圈的集合为\(S\),则: 1,每天有\(p\)概率失去一个能量最小的圈.特别的,如果\(S = \varnothing ...

  9. ZJUT 1423 地下迷宫(期望DP&高斯消元)

    地下迷宫 Time Limit:1000MS  Memory Limit:32768K Description: 由于山体滑坡,DK被困在了地下蜘蛛王国迷宫.为了抢在DH之前来到TFT,DK必须尽快走 ...

随机推荐

  1. BQMeetup

    BQMeetup 时间:2017.12.19 地点:北京东城区东直门国华投资大厦1105

  2. 2017-2018-2 20155203《网络对抗技术》Exp4 恶意代码分析

    1. 实践过程记录 1. 使用Windows计划任务schtasks监控系统运行 Windows计划任务schtasks监控系统: 在C盘建立一个netstatlog.bat文件,用来将记录的联网结果 ...

  3. 20155313 杨瀚 《网络对抗技术》实验八 Web基础

    20155313 杨瀚 <网络对抗技术>实验八 Web基础 一.实验目的 1.Web前端HTML 能正常安装.启停Apache.理解HTML,理解表单,理解GET与POST方法,编写一个含 ...

  4. mfc 进程的优先级

    知识点:  进程优先级  获取当前进程句柄  优先级设置  优先级变动  优先级获取 一.进程优先级(优先级等级) 简单的说就是进程(线程)的优先级越高,那么就可以分占相对多的CPU时间片. ...

  5. 苹果电脑获取Android Studio的发布版SHA1和开发版SHA1

    最近开始转战安卓,准备把我在苹果上的应用也在安卓上来一波,其中就遇到一个问题就是最牛天气(iOS和微信小程序都已经有了,就差安卓的了)引用的百度的定位功能,需要填写发布版SHA1和开发版SHA1,作为 ...

  6. Excel读取Word Table元素

    Option Explicit Sub Mian() Application.ScreenUpdating = False Application.DisplayAlerts = False Appl ...

  7. AssetBundleMaster

    AssetBundleMaster is an integrated solution for build AssetBundle and load assets from AssetBundles ...

  8. DevOps架构下如何进行微服务性能测试?

    一. 微服务架构下的性能测试挑战 微服务与DevOps 微服务是实现DevOps的重要架构 微服务3S原则 DevOps核心点 微服务架构下的业务特点 亿级用户的平台 单服务业务随时扩容 服务之间存在 ...

  9. 使用devstack/pike部署多节点实验

    目录 第一步:安装Ubuntu16.04 server并以stack为用户名创建用户 第二步:安装git及相关配置 第三步:安装Open vSwitch 2.5.X 第四步:获取devstack脚本 ...

  10. 《Deep Learning》(深度学习)中文版PDF免费下载

    <Deep Learning>(深度学习)中文版PDF免费下载 "深度学习"经典著作<Deep Learning>中文版pdf免费下载. <Deep ...