摘要: 题意: 维护一个区间,A操作表示把l,r区间上的所有线段清空,加入一条新的线段,并输入删除了多少条线段。B操作输出当前还剩多少条线段 思路: 线段树维护区间染色,因为后面的颜色不可能跟前面的颜色相同,线段树的操作就只有下放没有push_up,且维护del数组记录这个颜色是否被删除了。 cpp inc 阅读全文
posted @ 2019-10-03 21:18 新新人類 阅读(107) 评论(0) 推荐(0) 编辑
摘要: 题意: 最小割 思路: 点权为1,边权无限,要把点拆为出点和入点,由于指定了源点和汇点且源点汇点不能被割掉,超级源要连源点的出点,超级汇要连汇的入点。 cpp include define ll long long using namespace std; typedef pair pii; con 阅读全文
posted @ 2019-10-03 16:44 新新人類 阅读(174) 评论(0) 推荐(0) 编辑
摘要: 题意: 求两对点间最短路的最长公共路径。 思路: 一开始想求出两个最短路的路径,然后暴力求公共路径,发现最短路的路径并不是唯一的。要对s1,t1,s2,t2,求出单源最短路,对于一条边(u,v,w)能够成为s1到t1的最短路上的点,有$d[u][s1] + w + d[v][t1] == d[t1] 阅读全文
posted @ 2019-10-03 16:00 新新人類 阅读(197) 评论(0) 推荐(1) 编辑