[题解] [AGC005E] Sugigma_ The Showdown

posted on 2024-12-19 11:15:40 | under | source

高祖伟模拟赛警察抓小偷那题的原题。

题意:小偷和警察分别在黑白两棵树上,小偷在 \(x\)、警察在 \(y\)。小偷先手,二人轮流移动,可以走一步或不走,警察抓到小偷(即编号相同)就结束。小偷想尽可能多走,警察反之,请求出游戏局数或报告无法结束。

首先,假如黑树上存在边 \((u,v)\) 满足白树上 \(u\to v\) 距离 \(\ge 3\),那么小偷走到边的一端且下一步不会被警察抓时,就可以左右横跳使得游戏无法结束。记这种点为逃生点。

现在考虑小偷能否走到一个逃生点 \(p\),显然可以令小偷的逃生路径上除 \(p\) 外不存在其它逃生点。

于是小偷每一步只能在黑树上至多移动 \(2\) 步。不妨黑树以 \(y\) 为根,那么就有很好的性质:小偷无法跳出 \(y\) 子树,因为跳出去就马上被抓了。

所以警察必然每次向 \(x\) 子树方向移动一步。记小偷逃生路径为 \(a_1,a_2\dots a_m\),其中 \(a_1=x\)\(a_m=p\),则每个 \(i\) 必须满足白树 \(y\)\(a_i\) 的路径长度小于 \(i\),否则一定被抓。

显然,小偷不走重复点,所以可以定义合法点:满足黑树上 \(x\) 到它的距离小于白树上 \(y\) 到它的距离。小偷每次只能走合法点,假如可以走到一个逃生点就赢了。否则,选择一个可以走到的、距离 \(x\) 最远的点静静等待被抓。

posted @ 2026-01-13 11:20  Zwi  阅读(0)  评论(0)    收藏  举报