前言
竞赛图(tournament)是一个定义在有向图上的概念,顾名思义,它可以想象成
n
个人两两对决,赢得向输的连边,其实就是给一副完全图的无向边定了方向。
竞赛图有很多十分优美的性质,比如说在之前的[JZOJ5061]最长路径中我就介绍了其关于曼哈顿路径的一些性质。
在这里,我们要介绍一个判定竞赛图的优美定理——兰道定理(Landau’s Theorem),这个定理在1953年被Landau, H.G.证明。目前,这个定理在国内竞赛圈还不算普及,虽然在部分oj上有少数用到这个定理的题目(如:HDU5873),但是在国内网站上还没有找到任何证明。
定理
定义
定义一个竞赛图的比分序列(score sequence),是把竞赛图的每一个点的出度从小到大排列得到的序列。
定理内容
一个长度为
且 k=n 时这个式子必须取等号。
定理证明
首先这个定理的必要性是显然的:即任一
n
阶竞赛图都满足这个条件。
现在我们只需要证明这个定理的充分性。
在这里,我们的证明是一个构造算法。思路是从一个一般竞赛图开始,每次改变两条边的方向,构造出一个比分序列是给定序列的竞赛图。
假设有一个一个满足定理条件的序列
考虑当前构造到了一个竞赛图
U
,它的比分序列
当 k=n 时显然要取等号。
显然初始时 Tn 是满足这个条件的。
令 α 为第一个满足 sα>uα 的位置,这个位置显然存在不然就代表我们构造成功了。令 β 表示最后一个满足 uα=uβ 的位置。
再考虑 γ 是第一个满足 sγ<uγ 的位置,这个位置肯定要严格大于 β ,而且这个位置为什么一定存在呢?因为 ∑ni=1si=∑ki=1ui 但是 β 及其以前的位置 s 都是要大于等于
我们画一下这些位置大概是这样排列的
然后显然我们可以得到 uγ>sγ≥sβ>uβ ,即 uγ≥uβ+2 这个意味着什么呢?
考虑点 γ 和点 β , γ 的出度比 β 大 2 ,说明肯定至少有一个点
于是我们说明了至少存在一个 λ(λ≠β,λ≠γ) 满足存在有向边 (γ,λ) 和 (λ,β) 。
考虑翻转这两条边,然后得到一个新的竞赛图,简单推导就可以发现它的比分序列 u′ 一定仍然满足
且依然在 n=k 时一定取等号。
这样我们可以构造出一个新的竞赛图,可是为什么一直这样做就可以得到一个比分序列是 s 的竞赛图呢?
考虑定义两个竞赛图的曼哈顿距离
显然,经过我的边翻转操作之后一定有 dist(u′,s)=dist(u,s)−2 。并且任意时候由于 ∑ni=1si=∑ni=1ui ,一定有 dist(u,s)≡0(mod2) (模 2 意义下可以拆开绝对值符号)。也就是说
至此,定理证明完毕。
参考资料
维基百科:竞赛图
本文所参考的论文:JR Griggs,KB Reid, Landau’s Theorem Revisited,《Australas.j.combin》, 2004, 20:19-24