AtCoder Beginner Contest 199 F - Graph Smoothing(图的邻接矩阵幂的意义,数学期望,矩阵快速幂)

博客详细介绍了如何解决AtCoder Beginner Contest 199 F问题,涉及图的邻接矩阵幂的意义、数学期望计算以及矩阵快速幂在解决此类问题中的应用。通过建立概率模型,分析每个节点在多次操作后的期望权重,最终得出O(n^3*logk)的时间复杂度解决方案。
摘要由CSDN通过智能技术生成

整理的算法模板合集: ACM模板

点我看算法全家桶系列!!!

实际上是一个全新的精炼模板整合计划


Weblink

https://atcoder.jp/contests/abc199/tasks/abc199_f

Problem
在这里插入图片描述

Solution

我们要知道图的邻接矩阵的幂的意义,详见 P3758 [TJOI2017]可乐

解题报告(九) 矩阵与行列式(ACM / OI)超高质量题解

这个图就非常形象:
在这里插入图片描述

读题之后发现显然就是建图然后求 k k k 次幂即可,因为有 k k k 次互不影响的操作嘛。

我们拥有的操作是等概率地选择一条边,将这条边连接的两个点的点权变成两个点的点权的平均值。显然很难维护每一条边连接的两个点的平均值,所以我们换个思想,仅需维护每一个点得到的贡献即可。

显然对于每一个点的期望权值,只有自己对自己的贡献(概率),以及自己所连向的点对自己的贡献

我们设 d i d_i di 为点 i i i 的度数。

首先考虑自己对自己的贡献:

那么对于一个点来说,不做任何操作的话对自己的贡献即为自己的点权 a i a_i ai,但是当我选择一条边的时候,每一个点一共连有 d i d_i di 条边,所以每一个点被选中的概率显然为 d i m \cfrac{d_i}{m} mdi,那么一个点被选中之后,它自己的贡献就从 a i a_i ai 变成了 a i 2 \cfrac{a_i}{2} 2ai(因为我们进行的是取平均数的操作),所以原来的期望为

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

繁凡さん

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值