基环树DP
基环树DP
Page1:问题
啥是基环树?就是在一棵树上增加一条边。
Page2:基环树的几种情况
无向
有向:基环外向树,基环内向树。
Page3:处理问题的基本方式
1.断环成树
2.分别处理树和环,之后就是考环形DP了。
Page4:如何找无向基环树的环?
无向图直接找环
Page5:基环内向树
首先它是一个有向图,它构成类似基环树的结构,有一个特点是每个点
都有且只有一个出度,并且环外的节点方向指向环内
如果题目说满足每一个点都有一个唯一出度,则本质上就是给了我们一个 基环内向树森林(不只是一个基环内向树!!!!)
性质: 任何一个点沿着唯一出边走都会走到环上
利用这个性质可以随便选一个点直接循环找到。(或者直接用无向图找环,反正也不难写。)
Page6:基环外向树
与基环内向树相反,它有且只有一个入度(基环内向树是出度),并且
并且由环指向环外。
可以把所有边反向后,变成基环内向树快速找环。
Page 7:BZOJ1040 骑士
N个人,每个人都有一个战斗力和一个讨厌的人(不是他本身),要求一
个总战斗力最大的人的集合,满足集合内部两两不互相讨厌
N<=10^5
Page8:Solution
把这个讨厌关系的图画出来,就是个基环内向树森林,然后我们要求最
大权独立集。
求最大独立集内向和外向和无向图毫无区别,都是相邻的不能选。
这里的基环树上有且仅有一个环,就是从任意环上一条边(u,v)断开环,分
两种情况,一种是选u,不选v,一种是选v,不选u,两种情况取最大值。
转化成树的话,就是那个简单的树形dp。
找环dfs找就好,或者从一个点顺着父亲一直走直到走到一个曾经走到过
的点就找到一个环了。
Page 9:IOI2008 牛逼题luo化版
求无向基环森林中的每棵基环树的直径之和。边有边权
定义两个点的距离为两个点的最短路。
直径的定义是最长的两个点的距离
点数n<=1000
题源:BZOJ1791luo化版
基环树DP的更多相关文章
- bzoj1791[IOI2008]Island岛屿(基环树+DP)
题目链接:https://www.lydsy.com/JudgeOnline/problem.php?id=1791 题目大意:给你一棵n条边的基环树森林,要你求出所有基环树/树的直径之和.n< ...
- 【bzoj1040】[ZJOI2008]骑士 并查集+基环树dp
题目描述 Z国的骑士团是一个很有势力的组织,帮会中汇聚了来自各地的精英.他们劫富济贫,惩恶扬善,受到社会各界的赞扬.最近发生了一件可怕的事情,邪恶的Y国发动了一场针对Z国的侵略战争.战火绵延五百里,在 ...
- BZOJ1040:骑士(基环树DP)
Z国的骑士团是一个很有势力的组织,帮会中汇聚了来自各地的精英.他们劫富济贫,惩恶扬善,受到社会各界的赞扬.最近发生了一件可怕的事情,邪恶的Y国发动了一场针对Z国的侵略战争.战火绵延五百里,在和平环境中 ...
- BZOJ3037 创世纪[基环树DP]
实际上基环树DP的名字是假的.. 这个限制关系可以看成每个点有一条出边,所以就是一个内向基环树森林. 找出每个基环树的环,然后对于树的部分,做DP,设状态选或不选为$f_{x,0/1}$,则 $f_{ ...
- [CSP-S模拟测试]:卡常题/b(基环树+DP)
题目描述 $ρ$有一个二分连通无向图,$X$方点.$Y$方点均为$n$个(编号为$1\sim n$).这个二分图比较特殊,每一个$Y$方点的度为$2$,一条黑色边,一条白色边.所有黑色边权值均为$a$ ...
- [ZJOI2008] 骑士 - 基环树dp
一类基环树dp都是这个套路吧 随便拆掉环上的一条边 然后跑树形dp,设\(f[i][0/1]\)表示以第\(i\)个人为根的子树,第\(i\)个人选或不选,能收获的最大值 以断点\(u,v\)为根分别 ...
- [bzoj2878][Noi2012]迷失游乐园(基环树dp)
[bzoj2878][Noi2012]迷失游乐园(基环树dp) bzoj luogu 题意:一颗数或是基环树,随机从某个点开始一直走,不走已经到过的点,求无路可走时的路径长期望. 对于一棵树: 用两个 ...
- BZOJ3037 创世纪(基环树DP)
基环树DP,攻的当受的儿子,f表选,g表不选.并查集维护攻受关系.若有环则记录,DP受的后把它当祖宗,再DP攻的. #include <cstdio> #include <iostr ...
- BZOJ 1040: [ZJOI2008]骑士(基环树dp)
http://www.lydsy.com/JudgeOnline/problem.php?id=1040 题意: 思路: 这是基环树,因为每个人只会有一个厌恶的人,所以每个节点只会有一个父亲节点,但是 ...
随机推荐
- PyQt5笔记之标签
标签 QLabel用于显示文本或图像.没有提供用户交互功能.标签的视觉外观可以通过各种方式进行配置,并且可以用于为另一个窗口小部件指定焦点助记键. 一个QLabel可以包含以下任意内容类型: 内容 设 ...
- Java8 新特性 Data Time API
Java8新的日期类型 在Java8以前,Date日期API对我们非常的不友好,它无法表示日期,只能以毫秒的精试来表示时间,并且可以修改,他的线程还不是安全的.所以Java8中引入了全新的日期和时间A ...
- NPOI中的PhysicalNumberOfCells 与 LastCellNum
这两个理论上一个是算空列,一个不算空列,但是实际上有时候相同数据的excel,不同的excel编辑工具保存后的,PhysicalNumberOfCells可能不一样,会导致莫名其妙错误,最好使用Las ...
- kvm虚拟机日常管理与配置
1. 查看KVM虚拟机配置文件及运行状态 (1) KVM虚拟机默认配置文件位置: /etc/libvirt/qemu/ autostart目录是配置kvm虚拟机开机自启动目录. (2) vir ...
- 【问题记录】ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
一.问题描述 环境:MySQL 8.0 + Windows 由于密码错误或者其他原因导致无法连上MySQL服务,如下图: 二.解决方案 解决该问题的具体步骤如下: 1.关闭MySQL服务 以管理员权限 ...
- spring boot 连接 Oracle 的 application的简单配置
server.port=8090 //Tomcat服务端口号spring.datasource.driver-class-name= oracle.jdbc.driver.OracleDriver / ...
- 纯C语言实现线性表
#include <stdio.h> #include <stdlib.h> #define MAXSIZE 100 typedef int ElemType; typedef ...
- 2019 安易迅java面试笔试题 (含面试题解析)
本人5年开发经验.18年年底开始跑路找工作,在互联网寒冬下成功拿到阿里巴巴.今日头条.安易迅等公司offer,岗位是Java后端开发,因为发展原因最终选择去了安易迅,入职一年时间了,也成为了面试官 ...
- vue中通过hls.js播放m3u8格式的视频
近期做了一个功能,是接入一个海康的摄像头的监控视频,怎么获取m3u8的视频这里就不在叙述了,只说一下怎么将m3u8格式的视频成功播放 一.m3u8和HLS介绍 1.M3U8文件是指UTF-8编码格式的 ...
- 2019-09-16 curl简单操作
1.get请求 (使用file_get_contents()函数也可以实现get请求) //http_build_query() 构造一个url字符串 function http_get($url) ...