20260413紫题训练总结

A - 象棋

简单题,但看错题了,认为每个棋子的终点是固定的。

考场思路

使用网络流。
可以用流量代表棋子,费用代表步数。
现在最困难的是如何限制每个棋子要走到目标位置。
但网络流似乎无法限制这个东西,所以不是网络流。
发现只有起点和终点重合的点才有可能额外走而且最多出去一步,然后回来。
但这依然是困难的。


赛后和\(BirdenT\)大佬讨论后发现没脑子了。
题解

B - 魔法咒语

简单题。

考场思路

先把忌讳词语的 \(AC\) 自动机建出来,然后 \(DP\)。设 \(f_{i,j}\) 表示长度为 \(i\) 的咒语,在 \(AC\) 自动机上到了点 \(j\) 的方案数。
前面几个点直接转移,后面的用矩阵乘法优化。由于基本词汇长度最多为 \(2\),可以把矩阵变成 \(200\times200\) 的,前面 \(100\) 个放 \(f_{i,1},f_{i,2},\dots,f_{i,100}\) 后面的放 \(f_{i-1,1},f_{i-1,2},\dots,f_{i-1,100}\),这样就可以从 \(f_{1,i}\) 转移到 \(f_{3,j}\),即把一个长度为 \(2\) 的基本词汇加入。


题解

C - 树的重心

由于和 \(T1\) 奋战了很久,没时间思考了。
题解

posted @ 2026-04-13 20:30  Link-Cut_Trees  阅读(20)  评论(0)    收藏  举报