MinOr Tree
题意
给你一个图,让你求他或运算下的最小生成树。
题解
好题。我们令答案为 \(ans\),那么对于 \(ans\) 的每一位,从高往低我们肯定能取 \(0\) 就取 \(0\),证明是显然的。那么怎么判断能否取 \(0\) 呢?
因为是或运算,如果答案是 \(0\),那么这个生成树的每一个权的这一位也都是 \(0\),我们先把这一位是 \(1\) 的去掉,看剩下的是否联通。如果联通那么这一位就取 \(0\),如果不连通,我们就把刚才删掉的边加回来,然后取 \(1\)。
code
submission。有点卡常。