令一開始的所有元素的多重集合(即允許重複元素的集合,下述集合均為多重集合)為 \(\mathbb{S}\) ,開始時 \(|\mathbb{S}| = n\) 。
把每個屬性看作一種顏色。開始有 \(m\) 種顏色,分配給 \(n\) 個元素。根據顏色劃分集合 \(\mathbb{S} = \bigcup_{i = 1}^{m} \mathbb{X}_i\) 。取 \(\mathbb{A} = \mathbb{X}_k\) 滿足 \(\forall i \neq k, |\mathbb{X}_k| \geq |\mathbb{X}_i|\) 。如果對 \(\mathbb{S}\) 中增刪改元素,重新選取 \(\mathbb{A}\) 集合。
根據一個好的性質:無論如何修改 \(\mathbb{S}\) ,若 \(|\mathbb{S}| > 0\) ,恆有 \(|\mathbb{A}| > 0\) 。另外顯然 \(\mathbb{A}\) 中的元素與 \(\mathbb{S} \setminus \mathbb{A}\) 在的元素異色。所以我們討論 \(\mathbb{A}\) 和 \(\mathbb{S} \setminus \mathbb{A}\) 。
為了證明在色集中每次選取一對不同色對的操作可以進行多少次。
考慮每次操作讓 \(\mathbb{A}\) 和 \(\mathbb{S} \setminus \mathbb{A}\) 減少一個元素。
若 \(|\mathbb{A}| \geq \lceil \frac{|\mathbb{S}|}{2} \rceil\) ,\(\mathbb{A}\) 不會被重選。因為 \(|\mathbb{S}|\) 減少 \(2\) 且 \(|\mathbb{A}|\) 減少 \(1\) 可以恆保證 \(|\mathbb{A}| \geq \lceil \frac{\mathbb{S}}{2} \rceil\) ,即恆為最大顏色集。當且僅當 \(|\mathbb{S} \setminus \mathbb{A}| = 0\) 操作不可進行,此時有 \(|\mathbb{A}| \geq 0\) 。
若 \(|\mathbb{A}| < \lceil \frac{|\mathbb{S}|}{2} \rceil\) ,\(\mathbb{A}\) 一定會被重選,否則會出現 \(|\mathbb{A}| = 0\) 而 \(|\mathbb{S} \setminus \mathbb{A} \geq 1|\) 的情況,與 \(|\mathbb{A}|\) 的最大性矛盾。設第 \(k\) 次操作後 \(\mathbb{A}\) 第一次被重選成其他集合,則第 \(k - 1\) 次操作後,存在(至少)兩個集合大小為 \(|\mathbb{A}|\) 。因為每次操作一定會使 \(|\mathbb{A}|\) 減 \(1\) ,設每次操作後,重新選出的最大集為 \(|\mathbb{A}|\) 、次大集為 \(\mathbb{B}\) ,從第 \(k + 1\) 從操作起恆有 \(0 \leq |\mathbb{A}| - |\mathbb{B}| \leq 1\) 。當且僅當 \(|\mathbb{S} \setminus \mathbb{A}| = 0\) 操作不可進行,此時有 \(0 \leq |\mathbb{A}| \leq 1\) ,\(|\mathbb{B}| = 0\)。
上述構造性證明了,若 \(|\mathbb{A}| \geq \lceil \frac{|\mathbb{S}|}{2} \rceil\) 可以選取 \(|\mathbb{S} \setminus \mathbb{A}|\) 次,否則可以選取 \(\lfloor \frac{|\mathbb{S}|}{2} \rfloor\) 次。進一步地講,色集中異色色對的最大匹配數為 \(min(\lfloor \frac{|\mathbb{S}|}{2} \rfloor, |\mathbb{S} \setminus \mathbb{A}|)\) 。
當 \(|\mathbb{A}| < \lceil \frac{|\mathbb{S}|}{2} \rceil\) 且操作不可進行時若出現 \(\mathbb{A}| = 1\) ,這意味著有且僅有一個元素不能配對。我們開始時列舉這個不能配對的元素先行刪除,可以遍歷所有方案,\(|\mathbb{A}|\) 不會更大。因為 \(2 \nmid |\mathbb{S}|, \frac{|\mathbb{S}| - 1}{2} = \lfloor \frac{|\mathbb{S}|}{2} \rfloor\) ,最終的操作次數依舊是 \(\lfloor \frac{|\mathbb{S}|}{2} \rfloor\) 次。
由於每次選取的色對僅保證異色,而選擇方案是任選的,但運算元恆定,可以得到一個更強的結論。在色集中以任意方案進行異色色對的匹配,極大匹配數都為 \(min(\lfloor \frac{|\mathbb{S}|}{2} \rfloor, |\mathbb{S} \setminus \mathbb{A}|)\) 。
如果我們將色集中每一個元素拆成兩個節點構建完全二部圖,我們依然能夠得到這個結論。讀者有興趣自己證明嗎?
一個應用
首先我們強制一種偏序 \((\mathbb{S}, >)\) ,即若存在大小相等的關係,讓它們根據編號的不同強制不相等。(實際上就是把 sort 說得嚴謹一些)
第 \(i\) 步操作,我們在還未匹配的所有元素中每次選取一個最大的元素 \(x_i\) ,並在 \(x_i\) 的異色元素中選取一個最小的元素 \(y_i\) ,對這兩個元素進行匹配。這個操作將可以執行 \(min(\lfloor \frac{|\mathbb{S}|}{2} \rfloor, |\mathbb{S} \setminus \mathbb{A}|)\) 次。
\(wight(x_1) > wight(x_2) > wight(x_3) > \cdots > wight(x_{min(\lfloor \frac{|\mathbb{S}|}{2} \rfloor, |\mathbb{S} \setminus \mathbb{A}|)}) > wight(y_1) > wight(y_2) > wight(y_3) > \cdots > wight(y_{min(\lfloor \frac{|\mathbb{S}|}{2} \rfloor, |\mathbb{S} \setminus \mathbb{A}|)})\) 是顯然的。因為如果存在 \(wight(x_h) > wight(y_h) > wight(x_w) > wight(y_w)\) ,那麼 \(x_h\) 或者與 \(x_w\) 異色或者與 \(y_w\) 異色,否則 \(x_w\) \(y_w\) 同色,這與 \(y_h\) 的極小性矛盾。
又每次選取的 \(x_i\) 都是當前最大,則 \(wight(x_1), wight(x_2), wight(x_3), \cdots, wight(x_{min(\lfloor \frac{|\mathbb{S}|}{2} \rfloor, |\mathbb{S} \setminus \mathbb{A}|)})\) 取遍前 \(min(\lfloor \frac{|\mathbb{S}|}{2} \rfloor, |\mathbb{S} \setminus \mathbb{A}|)\) 個最大元素。但我們無法對 \(y_i\) 的位置做出精確保證。