其他分享
首页 > 其他分享> > HackerRank Definite Random Walks 题解

HackerRank Definite Random Walks 题解

作者:互联网

HackerRank Definite Random Walks 题解

传送门

首先图的样子是一个根向树+一条反向的返祖边。

对于环上的点,所有经过环上的边到达它的点都可以规约到只走一边环上的边。

钦定一个环上的点为root。

然后处理出每一个深度的点的数量。

这样可以算出所有经过一段环上的边的贡献。(大概就是将概率生产函数的反串和深度生产函数做卷积就好了)

然后考虑树的贡献。

对dfs序列分块,然后预处理每一块的卷积结果就好了!

另块大小为\(O(\sqrt{N\log N})\),时间复杂度为\(O(N\cdot \sqrt{N\log N})\)。

标签:环上,HackerRank,题解,Random,Definite,sqrt,log
来源: https://www.cnblogs.com/gary-2005/p/14405528.html