[APIO2024] 魔术表演
二进制分组,将 \(5000\) 个点随机分为 \(62\) 组,每组大约 \(80\) 个。
Alice 和 Bob 采用相同的哈希方式,最简单的可以直接取模。
1
若 \(X\) 的第 \(i\) 位为 \(1\),将组内所有点全部连成一个连通块,否则全为散点。
最后将所有连通块全部连到根。
解码时检查一个组内是否存在边,若存在边则该位为 \(1\),若不存在边则可以断定该位为 \(0\)。
2
一旦交互库用 DFS 序删边,上述做法就炸了。
若 \(X\) 的第 \(i\) 位为 \(1\) ,将组内所有点两两配对并连边,否则全为散点。
之后将所有连通块随机连起来即可,注意同一组的散点之间不能连边。
正确率 \(P = (1−\dfrac{1}{2^{40}})^{60}\)。

浙公网安备 33010602011771号