摘要: 例题地址:嘟嘟嘟 分块其实我早都听说过,而且怎么回事差不多都清楚了,只是一直没有写。现在离NOIP2018也挺近了,考虑到分块有时候确实能水到不少的分,决定这几天写一写。 众所周知,分块就是对于一个询问区间[L, R],属于刚好一个块中的部分就整块处理,多出来的散的部分就暴力处理。令块大小为S,则共 阅读全文
posted @ 2018-10-27 22:55 mrclr 阅读(422) 评论(0) 推荐(0) 编辑
摘要: 嘟嘟嘟 自底向上贪心,优先删除每一个儿子中代价最小的一个。 正确性我也不是十分明白,画图的时候发现贪心删边都对,于是试一试竟然AC了…… 1 #include<cstdio> 2 #include<iostream> 3 #include<cmath> 4 #include<algorithm> 5 阅读全文
posted @ 2018-10-27 16:53 mrclr 阅读(275) 评论(0) 推荐(0) 编辑
摘要: 嘟嘟嘟 一道很水的黑题~~ 边双缩点后用lca求树上两点间路径即可。 但是比较坑的是这道题是忽略重边的,结果我还特意考虑了重边,然后WA了几发。 还有两个点TLE了,原因是建新图的时候出现了重边。这个重边不是算法的问题,因为边双缩点后不可能有重边,而是写法上的问题:在建无向边的时候,习惯addEdg 阅读全文
posted @ 2018-10-27 15:56 mrclr 阅读(159) 评论(0) 推荐(0) 编辑
摘要: 嘟嘟嘟 这道题一看就知道是tarjan。 刚开始我是建无向图,然后边双缩点,判断夫妻是否在一个边双连通分量中。但是这个算法是错的,我也不知道为啥,求助各路大佬。 正确的做法是给每一条边规定方向:夫妻边女->男,情侣边男->女。这样就保证了每一条路径一定是男->女->男->女。最后只用判断每一对夫妻是 阅读全文
posted @ 2018-10-27 14:17 mrclr 阅读(187) 评论(0) 推荐(0) 编辑