$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多线程技术核心
1.进程的三大特征: 独立性:拥有自己的独立的地址空间,一个进程不可以直接去访问其他进程的地址空间. 动态性:是一个系统中活动的指令的集合. 并发性:单个进程可以在多个处理器上并发进行,互不影响. 2 ...
- 玩转 SpringBoot 2 快速整合拦截器
概述 首先声明一下,这里所说的拦截器是 SpringMVC 的拦截器 HandlerInterceptor.使用SpringMVC 拦截器需要做如下操作: 创建拦截器类需要实现 HandlerInte ...
- 正睿OI DAY3 杂题选讲
正睿OI DAY3 杂题选讲 CodeChef MSTONES n个点,可以构造7条直线使得每个点都在直线上,找到一条直线使得上面的点最多 随机化算法,check到答案的概率为\(1/49\) \(n ...
- Java中的static(1)【持续更新】——关于Eclipse的No enclosing instance of type ... 错误的理解和改正
No enclosing instance of type SomeClass is accessible. Must qualify the allocation with an enclosing ...
- ueditor的初始化赋值
ue.ready(function () {ue.setContent('初始内容'); //赋值给UEditor });
- ping本地局域网
#!/bin/bash for i in `seq 1 254` do ping -c 1 192.168.192.$i > /dev/null if [ $? -eq 0 ];then ech ...
- Java 学习笔记之 Synchronized锁对象
Synchronized锁对象: Synchronized取得的锁都是对象锁,而不是把一段代码或方法当作锁,哪个线程执行带synchronized关键字的方法,哪个线程就持有该方法所属对象的锁,那么其 ...
- 基于.NET环境,C#语言 实现 TCP NAT
基于.NET平台和C#语言实现TCP NAT穿越 1.<C# WinForm 跨线程访问控件(实用简洁写法)> 2.<基于.NET环境,C#语言 实现 TC ...
- slf4j输出变量
花括号表示占位符,推荐使用
- uniapp 用户拒绝授权再次调起授权-语音识别、微信地址、附近地址
小程序重构,采用 uniapp 框架.记录一下踩过的坑.关于用户拒绝再次调起授权,及如何识别语音识别.微信地址.附近地址的处理. 语音识别 组件 语音识别,小程序只有录音功能,若要识别录音文件,常规做 ...