【蒟蒻の笔记】圆方树初识

圆方树


首先描述一下圆方树:

注:我们把一条边连接两个节点的图也认为是点双连通的。

对于一个无向连通图,对于每个点双连通分量建立一个新的点,新的点作为“方点”,原本的点作为“圆点”,这就是圆方树名字中的“圆方”二字。

然后,在一个由前面的圆点和方点组成的新的图上,给方点和它的点双中的每个点连边,根据点双的性质,这会构成一颗树。

为什么圆方树是“树”

每个点至少属于一个点双,所以圆方树是连通的。

详细的说:本来点双连通分量的放在这里变成了一个类似菊花图的东西,然后点双之间必然互相连通(原图整个连通),所以整个图连通。

两个点(无论是圆是方)之间必然只存在一条简单路径(否则就会合并成一个点双)

圆方树的性质

圆方树是一棵树

满足树的所有性质,并且可以在上面进行树上算法(例如:书上查分、熟练泼粪)

圆方树中每一条简单路径上圆点和方点交错排列

我们所有的边都是通过方点向圆点连边得到,也就是说任何一条边连接一个圆点和一个方点

原图上两点之间的必经点即为圆方树上两点路径上的圆点

点双连通里其他点肯定不是必经的,然而想到达另一个点双所要经过的点是必须的,这也就是那个圆点

圆方树常见用法

都是树了,那就是化图为树(树上算法肯定比图上丰富吧)

别忘了先把Tarjan写对!/doge

例题

APIO2018 铁人两项

题目大意

大题思路
参考代码

SDOI2018 战略游戏

题目大意

大题思路
参考代码

P4320 道路相遇

题目大意

大题思路
参考代码

CF487E Tourists

题目大意

大题思路
参考代码
  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值