Loading

AT_apc001_f XOR Tree

首先树上差分,将链上问题转化为两点异或。

发现不为 \(0\) 的相同值肯定成对异或最优,这样就变成了值不超过 \(15\) 且互不相同的数,每次要你选择两个数,异或上一个值。

然后如果 \(k\) 个异或为 \(0\) 的元素可以直接消成 \(0\)(少一次操作),否则直接做就是 \(k\) 次。

当然,你可以将一个集合分成两个集合做这个操作,所以状压 DP 就做完了。

posted @ 2025-09-02 20:06  Alexande  阅读(12)  评论(0)    收藏  举报