其他分享
首页 > 其他分享> > 20210602模拟赛总结

20210602模拟赛总结

作者:互联网

狂粉司公子!

T1

拓展的汉诺塔问题。

先取下来i个盘子,利用j个柱子放到另一个柱子上,最少的步数记为 \(f[i][j]\) 。随后将剩下 \(n-i\) 个盘子利用 \(j-1\) 个盘子挪过去,步数为 \(f[n-i][j-1]\) ,然后再用 \(f[i][j]\) 步把刚开始的那 i 个盘子挪上去。

可以得到 \(f[n][m] = \min(2f[i][m] + f[n-i][m-1])\)

T2

显然最小的后缀一定是 'a' 开头。看它与后面的那个同去掉首字母的大小,判断是否需要往下换字母即可,正确性不太清楚。

T3

考虑设 f[u] 为从 u 走到 fa[u] 的期望步数,可以得到 \(f[u] = deg + \sum f[v]\) 。

设 g[u] 为从 fa[u] 走到 u 的期望步数,可以得到 \(g[v] = \sum\limits_{v \neq V}f[V] + g[u] + deg = f[u] + g[u] - f[v]\)

然后树上前缀和简单处理一下就好了。

标签:总结,柱子,sum,步数,fa,盘子,20210602,模拟,deg
来源: https://www.cnblogs.com/nao-nao/p/14840920.html