首页 > 其他分享 >Gale-Ryser 定理

Gale-Ryser 定理

时间:2023-08-19 19:33:23浏览次数:33  
标签:dots min sum Gale ge 定理 forall Ryser deg

给定两个非负整数数列 \(p_1 \ge p_2 \ge \dots \ge p_n\) 以及 \(q_1 \ge q_2 \ge \dots \ge q_m\) 满足 \(\sum_{i = 1}^n p_i = \sum_{i = 1}^m q_i\),存在一个简单二分图使得左部点的度数分别为 \(p_1, p_2, \dots, p_n\)、右部点的度数分别为 \(q_1, q_2, \dots, q_m\) 的充要条件为 \(\forall k \in [1, n], \sum_{i = 1}^k p_i \le \sum_{i = 1}^m \min\{q_i, k\}\)。

必要性

记该二分图的左部点为 \(x_1, x_2, \dots, x_n\)、右部点为 \(y_1, y_2, \dots, y_m\),不妨设 \(\forall i \in [1, n], deg(x_i) = p_i, \forall i \in [1, m], deg(y_i) = q_i\)。

对于左部的任意 \(k\) 个点,考察它们的度数之和。对于每一个右部点 \(y_i\),它最多和左部的 \(k\) 个点中的 \(\min\{q_i, k\}\) 个有边相连。因此左部任意的 \(k\) 个点度数之和 \(\le \sum_{i = 1}^m \min\{q_i, k\}\)。

所以 \(\forall k \in [1, n], \sum_{i = 1}^k p_i \le \sum_{i = 1}^m \min\{q_i, k\}\)。

充分性

考虑归纳构造出该二分图。

若我们已经构造出一个简单二分图满足 \(deg(x_k) < p_k, \forall i \in [1, k - 1], deg(x_i) = p_i, \forall i \in [k + 1, n], deg(x_i) = 0, \forall i \in [1, m], deg(y_i) \le q_i\),考虑如何添加或修改若干条边使得 \(deg(x_k) \leftarrow deg(x_k) + 1\),且除了 \(deg(x_k) < p_k\) 以外的所有条件仍然满足。

我们必然能找到一个 \(y_a\) 使得 \(deg(y_a) < \min\{q_a, k\}\),否则 \(\sum_{i = 1}^k p_i > deg(x_k) + \sum_{i = 1}^{k - 1} p_i = \sum_{i = 1}^m deg(y_i) = \sum_{i = 1}^m \min\{q_i, k\}\),矛盾。

如果还没有边 \((x_k, y_a)\),则加入该边。

否则根据抽屉原理,必然存在 \(b \in [1, k - 1]\) 使得没有边 \((x_b, y_a)\)。又因为 \(deg(x_b) = p_b \ge p_k > deg(x_k)\),所以一定存在 \(y_c\) 使得有边 \((x_b, y_c)\)、没有边 \((x_k, y_c)\)。删去边 \((x_b, y_c)\),加入边 \((x_b, y_a), (x_k, y_c)\)。

不难发现上述操作是使得 \(deg(x_k) \leftarrow deg(x_k) + 1\) 的一个合法构造。

初始 \(k = 1\),当 \(deg(x_k) < p_k\) 时不断调用上述构造,然后令 \(k \leftarrow k + 1\)。此时若 \(k = n + 1\) 则我们已经构造出一个满足条件的二分图。

容易发现上述充分性的构造实际上是在模拟网络流的增广路算法。

标签:dots,min,sum,Gale,ge,定理,forall,Ryser,deg
From: https://www.cnblogs.com/JCY-std/p/17642946.html

相关文章

  • BEST 定理
    BEST定理。从\(s\)出发的欧拉回路个数。选出一个内向树,对于\(u\)指定父边作为从\(u\)离开的最后一条边。再对所有节点剩余的出边随意定一个顺序,方案数是:\[T_s\timesout_s!\prod_{i\neqs}(out_i-1)!\]其中\(T_s\)是\(s\)为根的内向树个数,\(out_i\)是\(i\)的出度......
  • 主定理(但是没有证明)
    没有证明绝对不是因为我不会,证明可看:重谈主定理(master定理)及其证明这篇文章主要是写给自己看的,写的不好。\[\text{如果有}T(n)=aT(\lceil\frac{n}{b}\rceil)+O(n^d)\]\[\text{其中}n\text{问题规模,}a\text{为递推子问题数量,}\frac{n}{b}\text{为每个子问题的规模,}f(n)\text{......
  • 机器学习中的人生启示:“没有免费的午餐”定理(NFL)的个人发展之道→探讨感觉和身边其他
    #感觉和身边其他人有差距怎么办?#文章目录1引言2探究NFL定理的含义3将NFL定理应用于个人发展4探索个人兴趣和天赋5结论1引言机器学习中的“没有免费的午餐”定理(NFL)是一条深具启示意义的原则。该定理表明,没有一种算法可以在所有问题上都表现最好。在机器学习领域,这意味着没......
  • 中国剩余定理及其扩展
    $$\left{\begin{aligned}x_1=a_1\(mod\m_1)\x_2=a_2\(mod\m_2)\.\qquad\qquad\.\qquad\qquad\.\qquad\qquad\x_n=a_k\(mod\m_k)\end{aligned}\right.$$中国剩余定理算法流程计算所有模数的积M;对于第i个方程:a.计算$n_i\=......
  • 欧拉定理 & 扩展欧拉定理
    观前提醒:「文章仅供学习和参考,如有问题请在评论区提出」目录前置剩余类(同余类)完全剩余系(完系)简化剩余系(缩系)欧拉函数欧拉定理扩展欧拉定理参考资料前置剩余类(同余类)给定一个正整数\(n\),把所有的整数根据模\(n\)的余数\(r\in[0,n-1]\)分为\(n\)类,每一类就可以......
  • 威尔逊定理
    威尔逊定理:若p为素数,则p可以整除(p-1)!+1。用同余方程表示为:(p-1)! ≡-1(modp)证明如下充分性:当p=1时,(p-1)! ≡0(modp)当p=4时,(p-1)! ≡2(modp)当p>4时,当p为完全平方数时,设k²=p,探讨2k和p的大小,因为k²-2k在k>2的时候永远大于0,所以p>2k>k,所以(p-1)!≡ 1*2*.........
  • Lucas 定理
    组合意义天地灭。Lucas定理问题\(1\):给定\(n,m\in\mathbb{N}\)与\(p\in\mathbb{P}\),其中\(n\)与\(m\)相当大,而\(p\)则相对较小,要求计算\(\binom{n}{m}\bmodp\)的值。一般的预处理逆元以及递推的方法在\(n,m\)充分大时均会失效,我们需要新的工具来解决......
  • 大数定律和中心极限定理
    ......
  • 【机器学习|数学基础】Mathematics for Machine Learning系列之矩阵理论(13):Hamliton-Cay
    目录前言Hello!小伙伴!非常感谢您阅读海轰的文章,倘若文中有错误的地方,欢迎您指出~ 自我介绍ଘ(੭ˊᵕˋ)੭昵称:海轰标签:程序猿|C++选手|学生简介:因C语言结识编程,随后转入计算机专业,有幸拿过一些国奖、省奖…已保研。目前正在学习C++/Linux/Python学习经验:扎实基础+多做笔记+......
  • 广义容斥定理杂谈
    概念用语言描述,容斥原理求的是不满足任何性质的方案数,我们通过计算所有至少满足\(k\)个性质的方案数之和来计算。同样的,我们可以通过计算所有至少满足\(k\)个性质的方案数之和来计算恰好满足\(k\)个性质的方案数。这样的容斥方法我们称之为广义容斥原理。......