图染色问题的经典结论

定义

称一个边染色方案合法当且仅当每个顶点连出的所有边的颜色都互不相同,如果此时出现了 \(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 定理的更多相关文章

  1. poj1265&&2954 [皮克定理 格点多边形]【学习笔记】

    Q:皮克定理这种一句话的东西为什么还要写学习笔记啊? A:多好玩啊... PS:除了蓝色字体之外都是废话啊...  Part I 1.顶点全在格点上的多边形叫做格点多边形(坐标全是整数) 2.维基百科 ...

  2. 【学习笔记】Polya定理

    笔者经多番周折终于看懂了\(\text{Burnside}\)定理和\(\text{Polya}\)定理,特来写一篇学习笔记来记录一下. 群定义 定义:群\((G,·)\)是一个集合与一个运算·所定义 ...

  3. Windows录音API学习笔记(转)

    源:Windows录音API学习笔记 Windows录音API学习笔记 结构体和函数信息  结构体 WAVEINCAPS 该结构描述了一个波形音频输入设备的能力. typedef struct { W ...

  4. [学习笔记] 多项式与快速傅里叶变换(FFT)基础

    引入 可能有不少OIer都知道FFT这个神奇的算法, 通过一系列玄学的变化就可以在 $O(nlog(n))$ 的总时间复杂度内计算出两个向量的卷积, 而代码量却非常小. 博主一年半前曾经因COGS的一 ...

  5. 数论算法 剩余系相关 学习笔记 (基础回顾,(ex)CRT,(ex)lucas,(ex)BSGS,原根与指标入门,高次剩余,Miller_Rabin+Pollard_Rho)

    注:转载本文须标明出处. 原文链接https://www.cnblogs.com/zhouzhendong/p/Number-theory.html 数论算法 剩余系相关 学习笔记 (基础回顾,(ex ...

  6. 概率图模型学习笔记:HMM、MEMM、CRF

    作者:Scofield链接:https://www.zhihu.com/question/35866596/answer/236886066来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商 ...

  7. OI数学 简单学习笔记

    基本上只是整理了一下框架,具体的学习给出了个人认为比较好的博客的链接. PART1 数论部分 最大公约数 对于正整数x,y,最大的能同时整除它们的数称为最大公约数 常用的:\(lcm(x,y)=xy\ ...

  8. OI知识点|NOIP考点|省选考点|教程与学习笔记合集

    点亮技能树行动-- 本篇blog按照分类将网上写的OI知识点归纳了一下,然后会附上蒟蒻我的学习笔记或者是我认为写的不错的专题博客qwqwqwq(好吧,其实已经咕咕咕了...) 基础算法 贪心 枚举 分 ...

  9. Windows录音API学习笔记

    Windows录音API学习笔记 结构体和函数信息  结构体 WAVEINCAPS 该结构描述了一个波形音频输入设备的能力. typedef struct { WORD      wMid; 用于波形 ...

随机推荐

  1. log4J日志输出修改

    1. log4j.rootLogger=DEBUG,INFO, console, log, error ###Console ### log4j.appender.console = org.apac ...

  2. (9)java Spring Cloud+Spring boot+mybatis企业快速开发架构之SpringCloud-搭建Eureka服务注册中心

    ​ 首先创建一个 Maven 项目,取名为 eureka-server,在 pom.xml 中配置 Eureka 的依赖信息,代码如下所示. <!-- Spring Boot --> &l ...

  3. 详解Java中==和equals()的区别

    众所周知,在 Java 编程中,程序员通常会使用==或equals()来简单的比较地址,内容是否相等.而这两者之间的使用区别,对于初学 Java 的同学来说可能会比较迷糊.我将根据下面的几段示例程序, ...

  4. 可选链运算符、空值合并运算符 --应用到vue项目

    1.npm安装 npm install @babel/plugin-proposal-optional-chaining // 可选链运算符 ?. npm install @babel/plugin- ...

  5. Dockerfile 自动制作 Docker 镜像(三)—— 镜像的分层与 Dockerfile 的优化

    Dockerfile 自动制作 Docker 镜像(三)-- 镜像的分层与 Dockerfile 的优化 前言 a. 本文主要为 Docker的视频教程 笔记. b. 环境为 CentOS 7.0 云 ...

  6. 整理STC延时函数时遇到的玄学问题

    void Delay { unsigned char i, j; i = 11; j = 190; do { while (--j); } while (--i); } void Delay { un ...

  7. win10系统安装jdk

    应用程序形式 文件包形式 环境变量配置 https://www.cnblogs.com/gz9218/p/2ae083861f6749899b1b800faabe1c17.html

  8. javascript 一些函数的实现 Function.prototype.bind, Array.prototype.map

    * Function.prototype.bind Function.prototype.bind = function() { var self = this, context = [].shift ...

  9. python读取ini文件

    import configparser import os config=configparser.ConfigParser()#创建config对象 file_path=os.path.dirnam ...

  10. 如何通过云效Flow完成自动化部署—主机部署

    如何通过云效Flow完成自动化部署-主机部署,云效流水线Flow是持续交付的载体,通过构建自动化.集成自动化.验证自动化.部署自动化,完成从开发到上线过程的持续交付.通过持续向团队提供及时反馈,让交付 ...