Gravatar
yrtiop
积分:2101
提交:309 / 808

Pro2477  [HNOI 2013]游走

显然的贪心思路:让被经过期望次数多的边的编号尽量小。但是这题 $m$ 可能为 $10^5$ 级别,不能对边进行求解。

考虑求出每个点的期望经过次数,设其为 $f_i$,令点 $i$ 的度数为 $deg_i$。

则有:

$$f_1=(\sum\limits_{(1,v)\in E\land v\neq n} \frac{f_v}{deg_v})+1,f_i=\sum\limits_{(i,v)\in E\land v\neq n}\frac{f_v}{deg_v}(1\lt i\lt n)$$

$v\neq n$ 的原因是,一旦 $v=n$,就走到 $n$ 了,肯定不可能再走回 $i$。

因为有后效性,所以将其列成矩阵进行高斯消元求解。

则:

$$\forall (u,v)\in E,g(u,v)=\frac{f_u}{deg_u}+\frac{f_v}{deg_v}$$

其中 $g(u,v)$ 表示边 $(u,v)$ 被经过的期望次数。

注意特判 $u\neq n,v\neq n$,原因同上。

时间复杂度 $\mathcal O(n^3)$。


2022-12-09 16:55:23    
我有话要说
暂无人分享评论!