组合

2025 北京预赛加试 P4(4.9)

相关题目:[CTS2023] 琪露诺的符卡交换

手玩一些 case,比如每个人正好持有 45 张 1,45 张 2 之类的:

\[\begin{bmatrix}1,1,\cdots,1 \\2,2,\cdots,2 \\\cdots \\45,45,\cdots,45 \end{bmatrix}, \begin{bmatrix}1,1,\cdots,45 \\2,2,\cdots,44 \\\cdots \\45,45,\cdots,1 \end{bmatrix} \]

注意到每一列都是一个合法的 \(1\sim 45\) 的排列,这启示我们可以把整个矩阵转置,剩下的问题就变成了要重排每个人的手牌构造出这样满足每一列是排列的矩阵。

证:

首先我们说明:可以把每个同学的手牌重排后按序排在一行,满足恰好每一列都是一个 \(1\sim 45\) 的排列。

从左往右填,对列数归纳,设当前剩余 \(k\) 列还没有填,由归纳假设知所有数字卡都剩 \(k\) 张。对于所有同学的任意一个子集 \(S\),其持有总卡片数量为 \(|S|\times k\);对于每种卡,其最多被 \(k\) 个同学持有。抽屉原理,此时必有 \(|N(S)|\geq |S|\)。运用 Hall 定理 得到一定存在一个同学和卡片数字的完美匹配。

把每一行的对应匹配卡片放到这一列,问题变成一个规模为 \(k-1\) 的子问题。\(k=0\) 时显然成立,故由归纳得到了我们想证明的结论。

接下来我们把这个 \(45\times 45\) 的矩阵转置,对应组合意义即把每个牌和其转置后位置对应的手牌进行交换。此时转置后的矩阵满足题目要求,也保证了每张手牌最多交换一次。

QED.

posted @ 2026-04-15 08:28  Mi2uk1  阅读(3)  评论(0)    收藏  举报