题解 [IOI 2023 集训队互测 Day8] 大冬天题
题意
给定偶数 \(n\) 和正整数 \(k\),保证 \(n\ge 2k\)。将 \(S=\{n-1,n-3,\dots,n-(2k-1)\}\) 和 \(T=\{n+1,n+3,\dots,n+(2k-1)\}\) 中的数配对,使得每对数 \((x,y)\) 均有 \(x\perp y\)。
\(n\le 10^{100},k\le 10^6\)。
题解
按照 \(n-1,n-3,\dots\) 这个顺序考虑是不行的,所以从小往大进行匹配。
对于最小的 \(x\in S\),找到最小的 \(y\in T\) 使得 \(y-x\) 是 \(2\) 的幂次。显然 \(x\perp y\),也显然能够找到这样的 \(y\)。然后将 \((x+2,y+2),(x+4,y+4),\dots\) 配对,这样能够消去 \(S\) 中最小的若干个数和 \(T\) 中最大的若干个数,对于剩下的部分递归做即可。
Written by Alan_Zhao

浙公网安备 33010602011771号