首页 > 其他分享 >期望,不会一点

期望,不会一点

时间:2023-10-24 17:34:29浏览次数:26  
标签:varepsilon 期望 text sum mathcal binom 一点 步数 不会

因为打模拟赛做期望题猪脑过载了,所以来写一个。

因为博主的生成函数基础为 \(0\),所以写的比较笨,欢迎大家拷打。

不会有人高二了连这都不会吧

树上随机游走步数 \(k\) 次方期望:

假设你现在在一棵树的节点 \(u\) 上,每次你有 \(p_u\) 的概率站在原地不动,\(1-p_u\) 的概率等概率随机走到一个相邻的点。

对于每个点 \(i\geq 2\),求出 \(f_i\) 表示以 \(i\) 为起点,走到 \(1\) 的步数的 \(k\) 次方的期望。

\(\boldsymbol{k=1}\) 的情况

这是一个更为经典的问题

做法有两种:

  • 直接设 \(f_u\) 表示以 \(u\) 为起点到节点 \(1\) 的期望步数,有:\(f_u=p_uf_u+\dfrac{1-p_u}{deg_u}\sum\limits_{(u,v)\in E} f_v\)。我们待定系数,设 \(f_u=A_uf_{\text{fa}_i}+B_u\),由于 \(f_0=0\),所以从下到上求出 \(A_u\) 和 \(B_u\) 之后,就可以从上到下求出 \(f_u\)。
  • 设 \(f_u\) 表示 \(u\) 到 \(\text{fa}_u\) 的期望步数,直接列出式子:\(f_u=p_uf_u+\dfrac{1-p_u}{deg_u}\sum\limits_{(u,v)\in E\land v\neq \text{fa}_u} (f_v+f_u)+1\),这个可以直接从下到上转移。最后对 \(u\) 的所有祖先做前缀和即可。

扩展到 \(\boldsymbol{k>1}\) 的情况

如何求出步数的 \(k\) 次方?此处我们把每条从 \(u\) 到 \(1\) 的路径看做一个组合对象,记一条路径为 \(T\),所有路径构成的集合为 \(\mathcal{S}_u\)。一条路径的概率为 \(p(T)\),长度为 \(l(T)\),我们需要求的是:

\[f_{u,k}=\sum_{T\in \mathcal{S}_u}p(T)l(T)^k \]

考虑当一个对象集拼上一条边之后,权值发生的变化。

\[\sum_{T\in \mathcal{S}_u}p(T)(l(T)+1)^k=\sum_{i=0}^k \sum_{T\in \mathcal{S}_u}p(T)l(T)^i\binom{k}{i}=\sum_{i=0}^k f_{u,i}\binom{k}{i} \]

拼上一条路径仍然如此:

\[\sum_{T_1\in \mathcal{S}_{u_1},T_2\in \mathcal{S}_{u_2}}p(T_1)p(T_2)(l(T_1)+l(T_2))^k=\sum_{i=0}^k f_{u_1,i}f_{u_2,i}\binom{k}{i} \]

假如我们用符号化方式写出上面的转移式子(\(\varepsilon\) 用来描述一条边):

  • \(F_u=p_u(\varepsilon\times F_u)+\dfrac{1-p_u}{deg_u}\sum\limits_{(u,v)\in E} (\varepsilon\times F_v)\)。
  • \(F_u=p_u (\varepsilon\times F_u)+\dfrac{1-p_u}{deg_u}\sum\limits_{(u,v)\in E\land v\neq \text{fa}_u} (\varepsilon\times F_v\times F_u)\)。

根据上面对权值的分析,可以分别得到两种方法的转移方程,从而不难使用消元技巧解决问题,此处略去。由于做运算的复杂度为 \(\mathcal{O}(k^2)\) 单次,最后的复杂度是 \(\mathcal{O}(nk^2)\)。

更优的做法

第二种做法基本没救。不过第一种做法的操作仅有拼接 \(\varepsilon\)。

在拼接 \(\varepsilon\) 的操作中,维护下降幂(即组合数)要比维护普通幂有这明显的优势。为什么这么说呢?重新定义:

\[f_{u,k}=\sum_{T\in \mathcal{S}_u}p(T)\binom{l(T)}{k} \]

观察这个定义的转移:

\[\sum_{T\in \mathcal{S}_u}p(T)\binom{l(T)+1}{k}=\sum_{T\in \mathcal{S}_u} p(T)\left(\binom{l(T)}{k}+\binom{l(T)}{k-1}\right)=f_{u,k}+f_{u,k-1} \]

这样你可以 \(\mathcal{O}(1)\) 完成与 \(\varepsilon\) 的操作。

众所周知下降幂和普通幂是可以相互转化的,所以求出下降幂的答案就可以了!

注意到如果直接做的话可能要待定 \(f_{\text{fa}_u,0\sim k}\),不过其实可以先处理完 \(0\sim k-1\) 再处理 \(k\),然后做类似 \(k=1\) 的过程即可 \(\mathcal{O}(nk)\)。

标签:varepsilon,期望,text,sum,mathcal,binom,一点,步数,不会
From: https://www.cnblogs.com/yllcm/p/17785345.html

相关文章

  • Compose动画原理-我的一点小思考
    思想Compose的动画系统是基于值系统的动画,和传统的基于回调的动画不同,Compose的动画api通常对外暴露一个可观察的随时间改变的状态,进而驱动重组或者重绘,从而达成动画的效果基本使用可见性动画使用AnimatedVisibility,内容尺寸动画用animateContentSize,根据不同的状态展示不同的Com......
  • 关于图的一点东西
     自环的应用比如说在一个网页界面,我可以点击一个跳转到当前业面的链接,形成自环。多重边的应用比如飞机航班,一个地方到另一个地方可以有多条航线,这些航线的属性比如价格,时间等会有不同。......
  • 关于 RabbitMQ 做消息推送的一点记录
    先说需求,需求是很简单的,也就是假设有10w+的用户,每个用户都需要维护一个长链,那么就不可能单机,就需要分布式,而分布式的就需要确保精确推送,确保用户A的数据确实能被推送到用户A连接的机器那,所以一个主要思路就是用消息队列的routingkey的逻辑去做确保所有节点订阅了一个topic,并持有......
  • 时隔很久了,再写一点随笔
    今日复习之余,在B站看到了一门讲代数的课程,点开听了几句觉得口音很怪异,在网上搜了下,发现是印度的老师。顺着视频的源链接看到了一个类似印度版的慕课,MITOCW的课程不一样,印度版慕课每年都在更新课程、不仅有课程,还附有讲义的PDF等学习资料。课程就是传统的讲授,没有用过多的PPT,也是......
  • 把栏杆拍遍手不会疼吗
    中午吃了药准备午休,睡前看了半个小时的eva,刚好看到了碇真嗣不愿出战。你为什么不出战啊你为什么不出战啊怪兽来了啊怪兽来了啊怪我屁事我只是个玩原神的,于是我就睡着了。迷迷糊糊听到了一声声的呼唤,是母亲的。睁开眼看见明日香指着鼻子骂我人渣。起猛了,再睡一会。呼唤声在耳边萦......
  • 关于汇编的一点东西
    1,低位高位相加产生进位时互不影响,该舍掉还是舍掉。2,100和10(十进制)都是小于255(FF),就是说使用8位二进制,2位16进制就可以表示了,AX,BX等等那些位上的都是16进制。在汇编里mul乘法不是mulax,bx这种,由于越界问题,所以8*8情况下,al里保存1个8位数,另一个存在bl里,然后mulbl,系统就会把......
  • 谷歌使用Jetpack Compose逐步重写Android 14,不会你还不知道吧?
    前言早在2019年,谷歌就推出了JetpackCompose,这是一种使用Kotlin开发原生安卓应用的编写方式,抛弃了常规基于XML的视图来设计应用UI,而是让开发者以声明方式创建设计。从那时起,谷歌就大力鼓励开发者在安卓应用中使用JetpackCompose,还使用JetpackCompose重构了其PlaySto......
  • 一点模板
    线性素数筛:欧拉筛:定义数组prim[i]表示第i大的素数,isprim[i]表示i是否为素数(是否被筛过)从2~n遍历,if(!isprim[i])prim[++cnt]=i,如果遍历到i时i仍未被筛,则将i记录于prim数组中。接下来开始以i为基数筛除素数,我们发现:所有的合数都能被筛分割为若干数的积。所以无论i是否为......
  • 互联网大厂面试一点都不难,邻居小孩都能过,是真的吗?
    前言最近正值“金九银十”时期,但由于就业形势并不乐观,大家对于面试的吐槽也多了几分...面试前期什么都没准备,导致错失了许多面试的机会...面试时太紧张了,想说的话都没说出来,发挥不好,很苦恼...空窗期太久,投简历800余份,都没有回应...准备了很久的一场面试,但由于候选者太多,最后的回复......
  • 还不会在MT4用Renko,FPmarkets澳福手把手教你一分钟学会
    很多投资者还不会在MT4上使用Renko,让FPmarkets澳福通过一个具体的例子来探讨,Renko图表指标在MT4平台上的应用,以AG Renko为例。首先,投资者需要解压缩下载的档案,并将其移动到MT4的“指标”文件夹中。重启MetaTrader交易平台后,所添加的工具就会出现在指标列表中。若要将AG Renko添加......