$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$
随机推荐
- ajax跨域访问数据
通过json发送和接受数据,数据以json的格式在服务器端和前台进行传递,什么是json数据?这里就不进行详细阐述,轻自行百度解决. 在html5 中利用ajax 异步请求时,会遇到跨域的问题,如果域 ...
- java中的Math.ceil、Math.floor和Math.round
ceil意为天花板,指向上取整:floor意为地板,指向下取整:round指四舍五入 package com.company; public class Main { public static vo ...
- 一次SSM项目记录
1.控制台输入 mvn archetype:generate -DgroupId=com.yjdev -DartifactId=myzone -DarchetypeArtifactId=maven-a ...
- Windows SDK version 8.1 下载地址
Windows SDK version 8.1 下载地址 https://go.microsoft.com/fwlink/p/?LinkId=323507
- C、C++的Makefile模板
目录 Makefile模板 用法 编译C程序 编译C++程序 其他 Tips Makefile模板 CC = gcc LD = $(CC) TARGET = $(notdir $(CURDIR)) S ...
- Qt5教程: (1) Hello World 程序
1. 新建工程 在Welcome界面选择New Project --> Application --> Qt Widgets Application --> Choose 输入工程名 ...
- window 后台运行的应用程序点击没反应
有时候,开了几个软件,有的软件一段时间没点击,再点击软件的图标一点反应都没有,这时,可以试着这么做: window 快捷键 :win + r , 输入命令 : taskmgr ,打开任务管理器,选择 ...
- JS中的事件委托/事件代理详解
起因: 1.这是前端面试的经典题型,要去找工作的小伙伴看看还是有帮助的: 2.其实我一直都没弄明白,写这个一是为了备忘,二是给其他的知其然不知其所以然的小伙伴们以参考: 概述: 那什么叫事件委托呢?它 ...
- Cocos2d-x 学习笔记(15.1) EventDispatcher
EventDispatcher对监听器进行管理,围绕着监听器工作.可以添加.删除.暂停/恢复监听器.分发事件到监听器. 1. 一些成员 /** 把ListenerID和同ID监听器的容器对应 */ s ...
- .Net Core3.0 配置Configuration
准备 .NET core和.NET项目配置上有了很大的改变,支持的也更加丰富了比如命令行,环境变量,内存中.NET对象,设置文件等等..NET项目我们常常把配置信息放到webConfig 或者appC ...