第31届IMO 第2题


题目

设n>=3,考虑一个圆上由2n-1个不同点构成的集合E。现给E中恰好k个点染上黑色,如果至少有一对黑点使得这两个黑点之间的弧上(两段弧中的某一个)包含恰好E中的n个点,就成这样的染色方法是“好的”。

试找出对于集合E能保证任意一种染色方法都是“好的”的最小的k值。


解答

将问题转化为:一个圆上有2n-1个点,一开始都是白色的,将点一个一个染色,染的点必须满足染色方法是“好的”,分析易知,每染一个点,剩下的点里可以染的点的个数-2或-1或-0,我们想找的最小的k值,就是  能染的最多的点+1,这样的话染K个点必然会满足条件。

思考如何才能染最多的点,染色策略如下:染那些可以让染的点减少最少的点。例如,染A点后,剩下的点里可以染的点数目-2;染B点后,剩下的点里可以染的点数目-1;染C点后,剩下的点里可以染的点数目-0;那么就染C点。

这样染色的原因很简单,只要能保证每次都是染那些“损耗”最小的点,那么就可以染最多的点。 但是可能会有一种例外:先染一个-2的点,可能之后会出现两个-0的点,这样就会出现一共染了3个点,但是损耗-2,如果“损耗”最小的点都是-1的话,那么染3个点,损耗-3,即染了相同的点,剩下的点里可以染的点少了,如果这种情况存在的话,那么我们的策略就不对了,但是,这种情况是不存在的,下面给出证明。

先证明-0的点一定是由-2的点得到的:用反证法,假设不是,那么就会得到有无穷个点的结论,得到矛盾。

对染了-2的点经过一系列变化再染-0点这个过程进行分析,该过程可等价为-1····-1,即对于-2,-0,可以看作-1,-1,那么如果存在-2,-0,-0,那么就存在-1,-1,-0,而-1,-1,-0是符合我们的染色策略的,所以我们的策略没问题。

知道了染色策略就要求k值了,我们可以先画一个圆,再随便染一个点,此时剩下的点里的损耗-2的,然后利用我们的策略进行染色,在分析的过程中,会出现第一个点对应的损耗点与第一个点的间隔为3的倍数和非3的倍数两种情况,对于第一种情况(2n-1是3的倍数),k=((2n-1)/3-1)/2 ×3 +1 =n-1,或者 k=(((2n-1)/3-3)/2+1)×3+1=n-1;对于第二种情况(2n-1不是3的倍数),进行简单的画图模拟,可以得到 k=(2n-1 -3)/2+1+1=n

原文地址:https://www.cnblogs.com/lau1997/p/11377631.html