【学习笔记】Vizing 定理
图染色问题的经典结论
定义
称一个边染色方案合法当且仅当每个顶点连出的所有边的颜色都互不相同,如果此时出现了 \(k\) 个颜色那么称该方案是图的一组 \(k\) 染色
一张无向图的边着色数为最小的 \(k\) 满足图可以 \(k\) 边染色,但不存在一个 \(k-1\) 边染色方案,记图 \(G\) 的边色数为 \(\chi'(G)\)
同时记 \(\Delta(G)\) 为图上的最大度数
\(\rm{Vizing}\) 定理:
如果满足 \(G\) 是二分图,那么 \(\chi'(G)=\Delta(G)\)
考虑对这部分进行构造性证明:
考虑向二分图中加入边 \((x,y)\),设 \(c_x\) 为 \(x\) 点连出的边的颜色中的一个在 \([1,c]\) 中没有出现的颜色,\(c_y\) 同理
如果 \(c_x=c_y\) 那么直接将这条边染成 \(c_x\) 即可
否则不妨设 \(c_x< c_y\) 将 \(y\) 点连出的颜色为 \(c_x\) 的边改成颜色 \(c_y\) 并将边 \((x,y)\) 染成 \(c_x\)
同时由图是二分图,那么一定可以从 \(y\) 点开始找到一条终点不是 \(x\) 的增广路,路径颜色为 \(c_x,c_y\) 交替,直接在 \(\{c_x,c_y\}\) 集合内反色即可
如果 \(G\) 是简单图,那么 \(\Delta(G)\le \chi'(G)\le \Delta(G)+1\)
证明博主不会
例题
Undefined
一张 \((n,m)\) 点的二部图,有 \(k\) 条边,\(c\) 个颜色
一个点的代价是给其边染色之后边表中出现次数最多的颜色减去出现次数最少的颜色,求所有点的代价和的最小值
首先给出结论:\(\rm{Min}=n+m-\sum_{i=1}^{n+m}[c|deg[i]]\)
将一个点的 \(c\) 个边包装成一组进行建立新点,新图仍然是二分图,同时满足每个点的度数 \(\leq c\)
直接使用 \(\rm{Vizing}\) 定理完成结论证明
UOJ44
和上面的题目类似,对于加边操作,动态加虚点找增广路
删边判一下是不是最后一个虚点,不是的话从最后一个点扒一个过来即可
【学习笔记】Vizing 定理的更多相关文章
- poj1265&&2954 [皮克定理 格点多边形]【学习笔记】
Q:皮克定理这种一句话的东西为什么还要写学习笔记啊? A:多好玩啊... PS:除了蓝色字体之外都是废话啊... Part I 1.顶点全在格点上的多边形叫做格点多边形(坐标全是整数) 2.维基百科 ...
- 【学习笔记】Polya定理
笔者经多番周折终于看懂了\(\text{Burnside}\)定理和\(\text{Polya}\)定理,特来写一篇学习笔记来记录一下. 群定义 定义:群\((G,·)\)是一个集合与一个运算·所定义 ...
- Windows录音API学习笔记(转)
源:Windows录音API学习笔记 Windows录音API学习笔记 结构体和函数信息 结构体 WAVEINCAPS 该结构描述了一个波形音频输入设备的能力. typedef struct { W ...
- [学习笔记] 多项式与快速傅里叶变换(FFT)基础
引入 可能有不少OIer都知道FFT这个神奇的算法, 通过一系列玄学的变化就可以在 $O(nlog(n))$ 的总时间复杂度内计算出两个向量的卷积, 而代码量却非常小. 博主一年半前曾经因COGS的一 ...
- 数论算法 剩余系相关 学习笔记 (基础回顾,(ex)CRT,(ex)lucas,(ex)BSGS,原根与指标入门,高次剩余,Miller_Rabin+Pollard_Rho)
注:转载本文须标明出处. 原文链接https://www.cnblogs.com/zhouzhendong/p/Number-theory.html 数论算法 剩余系相关 学习笔记 (基础回顾,(ex ...
- 概率图模型学习笔记:HMM、MEMM、CRF
作者:Scofield链接:https://www.zhihu.com/question/35866596/answer/236886066来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商 ...
- OI数学 简单学习笔记
基本上只是整理了一下框架,具体的学习给出了个人认为比较好的博客的链接. PART1 数论部分 最大公约数 对于正整数x,y,最大的能同时整除它们的数称为最大公约数 常用的:\(lcm(x,y)=xy\ ...
- OI知识点|NOIP考点|省选考点|教程与学习笔记合集
点亮技能树行动-- 本篇blog按照分类将网上写的OI知识点归纳了一下,然后会附上蒟蒻我的学习笔记或者是我认为写的不错的专题博客qwqwqwq(好吧,其实已经咕咕咕了...) 基础算法 贪心 枚举 分 ...
- Windows录音API学习笔记
Windows录音API学习笔记 结构体和函数信息 结构体 WAVEINCAPS 该结构描述了一个波形音频输入设备的能力. typedef struct { WORD wMid; 用于波形 ...
随机推荐
- linux 档案权限篇之一
一:预备知识 1.在linux中,任何一个档案都具有.所有者.用户组.其他用户这三种身份的个别权限. 1.所有者:即档案拥有者,由于Linux是多人多任务的系统,因此可能常常会有很多人同时使用这部主机 ...
- Xamarin UIProgressView自定义
Progress.ProgressImage = UIImage.FromFile ("progress.png"); Progress.TrackImage = UIImage. ...
- TypeError: exchange_declare() got an unexpected keyword argument 'type'
在设置消息广播时:以下代码会报错channel.exchange_declare(exchange='direct_logs', type='direct')TypeError: exchange_d ...
- 解决idea debugger Frames are not available
现象:idea2017.3.7 sofaboot项目debugger报错 Frames are not available. 之前好用,不知道为啥突然不能debugger,run能正常运行代码.如下图 ...
- TypeScript与面向对象
目录 1.引 2.类(class) 3.构造函数和this 4.继承 5.super 6.抽象类 7.接口 8.属性的封装 9.泛型 1.引 简而言之就是程序之中所有的操作都需要通过对象来完成.一切操 ...
- webpack4一些设置
一.sourceMap: 是一个映射关系,如果出错可以知道实际文件行数出错 在webpack.config.js设置属性 devtool: 'source-map' 在生产环境可以设置为(提醒错误比较 ...
- MapReduce原理深入理解(二)
1.Mapreduce操作不需要reduce阶段 1 import org.apache.hadoop.conf.Configuration; 2 import org.apache.hadoop.f ...
- Linux系列(19) - 常用压缩命令(2)
常用压缩格式 .tar.gz .tar.bz2 上述两个原理:先用tar进行打包,打完包再用gz或者bz2进行压缩 打包命令tar 命令格式 tar -cvf [打包文件名] [源文件1] [源文件2 ...
- Jmeter系类(32) - JSR223(2) | Groovy常见内置函数及调用
常见内置函数及调用 获取相关函数 获取返回数据并转换为String字符串 prev.getResponseDataAsString() 例子 String Responsedata = prev.ge ...
- requests接口自动化-动态关联text/html格式
动态关联,前一个接口返回的值为后一个接口请求的参数. # 动态关联 import requests def test_cookies(): # 以百度为例 r_baidu=requests.get(' ...