$POJ2942\ Knights\ of\ the\ Round\ Table$ 图论
正解:图论
解题报告:
一道,综合性比较强的题(我是萌新刚学$OI$我只是想练下$tarjan$,,,$QAQ$
考虑先建个补图,然后现在就变成只有相互连边的点不能做邻居.所以如果有$K$个数能依题目要求坐一张长桌上,就一定是这$K$个数在图上是一个奇环.
所以现在题目就转化成了求所有不在任何一个奇环的点的数量.
引理一.若两个点属于两个不同的$v-DCC$,则他们不可能在一个环上.
考虑反证法,若$x$在编号$bl_x$的$v-DCC$中,$y$在编号为$bl_y$的$v-DCC$中,且$bl_x\not=bl_y$,$xy$在一个环上.
则由$v-DCC$的性质可得,除去图上任意一点$x$与编号为$bl_x$的$v-DCC$中的点依然联通,$y$与编号为$bl_y$的$v-DCC$中的点依然联通.再由环的性质得,出去图上任意一点$xy$依然联通.
所以有出去图上任意一点编号为$bl_x$的$v-DCC$与编号为$bl_y$的$v-DCC$整体都联通.
所以这两个就可以再合并为一个$v-DCC$.这就不满足$v-DCC$的极大性了.所以$xy$不可能在一个环上.
证毕.
引理二.若一个$v-DCC$中存在奇环,则整个$v-DCC$中的所有点都在奇环上.
这不随便证下就完事.因为奇环的长度为奇数,所以一定是由两条奇偶性不同的路径组成.所以不属于奇环的那一段无论奇偶性如何一定可以构造出一个基环.
证毕.
所以只要$tarjan$求个$v-DCC$,然后判下是否有奇环就成.
判奇环可以二分图染色,$QwQ$
$over$
随机推荐
- 夯实Java基础系列15:Java注解简介和最佳实践
Java注解简介 注解如同标签 Java 注解概述 什么是注解? 注解的用处 注解的原理 元注解 JDK里的注解 注解处理器实战 不同类型的注解 类注解 方法注解 参数注解 变量注解 Java注解相关 ...
- rpm,yum
rpm RedHat Package Manager软件包管理器的核心功能:1.制作软件包2.安装.卸载.升级.查询.校验.数据库的重建.验证数据包等工作 安装: rpm -i /PATH/TO ...
- Object.keys方法详解
一.官方解释 Object.keys() 方法会返回一个由一个给定对象的自身可枚举属性组成的数组,数组中属性名的排列顺序和使用 for...in 循环遍历该对象时返回的顺序一致 .如果对象的键-值都不 ...
- 超大规模商用 K8s 场景下,阿里巴巴如何动态解决容器资源的按需分配问题?
作者 | 张晓宇(衷源) 阿里云容器平台技术专家 关注『阿里巴巴云原生』公众号,回复关键词"1010",可获取本文 PPT. 导读:资源利用率一直是很多平台管理和研发人员关心的话 ...
- 294 div2 C. A and B and Team Training
C. A and B and Team Training 题目:A and B are preparing themselves for programming contests. An import ...
- ef core实现软删除
很多web程序一般的偶不会设计真的物理删除了. 基本上都是在在数据库加一个标记,就得当作已经删除了.同时在查询的时候,过滤已经标记删除的数据 ef core实现软删除是非常简单的,直接在OnModel ...
- 02-16 k近邻算法
目录 k近邻算法 一.k近邻算法学习目标 二.k近邻算法引入 三.k近邻算法详解 3.1 k近邻算法三要素 3.1.1 k值的选择 3.1.2 最近邻算法 3.1.3 距离度量的方式 3.1.4 分类 ...
- Git版本控制之ubuntu搭建Git服务器
Git是一个开源的分布式版本控制系统,可以有效.高效的处理从很小到非常大的项目版本管理.使得开发者可以通过克隆(git clone),在本地机器上拷贝一个完整的Git仓库,也可以将代码提交到Git服务 ...
- Cocos2d-x入门之旅[3]动作
Cocos通过动作(Action)可以让精灵动起来,把数个动作组成序列(Sequence)就能让精灵做出连续的动作,在动作中我们可以改变精灵的位置,旋转角度,缩放比例,等等 动作(Action) 首先 ...
- Ubunut18 安装docker环境&&AWD攻防平台部署
docker:有两个版本:docker-ce(社区版)和docker-ee(企业版). 参考官网地址:https://docs.docker.com/engine/installation/linux ...