点此看题面 大致题意: 给你一张图以及每条边的出现时间和消失时间,让你求每个时间段这张图是否是二分图. 二分图性质 二分图有一个比较简单的性质,即二分图中不存在奇环. 于是题目就变成了:让你求每个时间段这张图是否不存在奇环. \(LCT\)动态维护图连通性 关于\(LCT\),详见这篇博客:LCT入门. 接下来我们开始讨论如何用\(LCT\)动态维护图连通性. \(LCT\)动态维护树连通性,应该是比较简单,因为\(LCT\)本身就是一棵树,加边删边都很容易. 而维护图连通性最麻烦的一点,就是在…
题目类型:\(LCT\)动态维护最小生成树 传送门:>Here< 题意:带权无向图,每条边有权值\(a[i],b[i]\).要求一条从\(1\)到\(N\)的路径,使得这条路径上的\(Max\{a[i]\}+Max\{b[i]\}\)最小 解题思路 \(LCT\)板子打错调试了半个小时--菜到不能再菜了-- 首先我们发现题目要求不是最小的和,而是最小的\(Max\{a[i]\}+Max\{b[i]\}\)--都只取决于最大.因此我们可以联想,如果\(Max\{a\}\)确定了,那么余下的就是用…
题目类型:\(LCT\)动态维护最小生成树 传送门:>Here< 题意:给出一张简单无向图,要求找到两点间的一条路径,使其最长边最小.同时有删边操作 解题思路 两点间路径的最长边最小,也就是等同于要求最小生成树.因此如果没有删边操作,那么只要\(Kruscal\)一遍就好了. 然而现在需要删边,也就是意味着最小生成树需要不停地重构--那怎么维护呢? 考虑离线,倒着处理所有的删边.于是乎就成为了一条一条加边.这就是标准的\(LCT\)动态维护最小生成树了.具体方法就是:如果两个点不在同一颗树中,…
题目描述 某校开展了同学们喜闻乐见的阳光长跑活动.为了能“为祖国健康工作五十年”,同学们纷纷离开寝室,离开教室,离开实验室,到操场参加3000米长跑运动.一时间操场上熙熙攘攘,摩肩接踵,盛况空前. 为了让同学们更好地监督自己,学校推行了刷卡机制. 学校中有n个地点,用1到n的整数表示,每个地点设有若干个刷卡机. 有以下三类事件: 1.修建了一条连接A地点和B地点的跑道. 2.A点的刷卡机台数变为了B. 3.进行了一次长跑.问一个同学从A出发,最后到达B最多可以刷卡多少次.具体的要求如下: 当同学…
这题 FlashHu 的优化思路值得借鉴 前置引理 树中所有点到某个点的距离和中,到重心的距离和是最小的. 把两棵树通过某一点相连得到一颗新的树,新的树的重心必然在连接原来两棵树重心的路径上. 一棵树添加或者删除一个节点,树的重心最多只移动一条边的位置. 一棵树最多有两个重心,且相邻:同时,拥有奇数个节点的树只有一个重心 其实是树的重心本身的定义:各个子树大小皆不超过总节点数的一半的节点即为树的重心(证明:不管向哪一侧移动,对应的子树节点个数都是 $\le$ 树的总节点一半的,也就是说,剩下的节…
4025: 二分图 Time Limit: 20 Sec  Memory Limit: 512 MBSubmit: 2667  Solved: 989[Submit][Status][Discuss] Description 神犇有一个n个节点的图.因为神犇是神犇,所以在T时间内一些边会出现后消失.神犇要求出每一时间段内这个图是否是二分图.这么简单的问题神犇当然会做了,于是他想考考你. Input 输入数据的第一行是三个整数n,m,T. 第2行到第m+1行,每行4个整数u,v,start,end…
题目描述 在遥远的S星系中一共有N个星球,编号为1…N.其中的一些星球决定组成联盟,以方便相互间的交流.但是,组成 联盟的首要条件就是交通条件.初始时,在这N个星球间有M条太空隧道.每条太空隧道连接两个星球,使得它们能 够相互到达.若两个星球属于同一个联盟,则必须存在一条环形线路经过这两个星球,即两个星球间存在两条没有 公共隧道的路径.为了壮大联盟的队伍,这些星球将建设P条新的太空隧道.这P条新隧道将按顺序依次建成.一条 新轨道建成后,可能会使一些星球属于同一个联盟.你的任务是计算出,在一条新隧…
题意:带增删边的查询二分图 题解:因为二分图肯定带奇环,lct维护,每次要加入一条边之前判断会不会构成环,如果会就把最先会删除的边删掉,然后如果是奇环就打个标记,然后把奇环数++,删除的时候,把标记删除,然后奇环数量--,需要注意的是可能有自环,还有一点就是我们先把边拆成点了,判断奇环的时候不能直接看是奇数还是偶数,我们先/2再看是不是奇数,如果/2是偶数就是有奇环 /************************************************************** P…
题目描述 给定一个标号为从 11 到 nn 的.有 mm 条边的无向图,求边权最大值与最小值的差值最小的生成树. 输入输出格式 输入格式:   第一行两个数 n, mn,m ,表示图的点和边的数量. 第二行起 mm 行,每行形如 u_i, v_i, w_iui​,vi​,wi​ ,代表 u_iui​ 到 v_ivi​ 间有一条长为 w_iwi​ 的无向边.   输出格式:   输出一行一个整数,代表你的答案. 数据保证存在至少一棵生成树.   输入输出样例 输入样例#1: 复制 4 6 1 2…
题目传送门 https://lydsy.com/JudgeOnline/problem.php?id=4025 题解 貌似这道题有一个非常简单的做法是线段树分治+并查集. 可是我是为了练 LCT 来做这道题的啊. 所以我还偏要用 LCT 把这道题 A 掉! 如果一个图是二分图,那么就是说,这个图中只要有环就必须是偶环. 所以不妨建立一棵生成树,然后对于每一条边都在上面求出覆盖距离.如果覆盖距离是偶数就是错的. 但是我们需要保证这棵生成树的在该存在的时候一定要存在啊. 所以我们不妨按照出现时间加边…