UOJ #810. 【UNR #7】比特迷宫
唉,咋还是做不来。
假设 \(a+b\) 不进位,这样就是对一个子集 xor 1。
考虑按照 popcount 从小到大做,那么相当于是从 \(\operatorname{popcount}=i\) 的点中选若干点,覆盖 \(\operatorname{popcount}=i+1\) 的点。
这个可以直接贪心:每次选出覆盖了最多未被覆盖点的点,将这个点取了。
这样构造最多需要 \(157884\) 个点,可以通过。
复杂度是暴力模拟的 \(O(3^n)\)。