最小生成树
文章平均质量分 76
neither_nor
这个作者很懒,什么都没留下…
展开
-
BZOJ4144 [AMPPZ2014]Petrol
做多源最短路,跑每个点到哪个加油站最近,记录每个点是哪个点来的,如果两个点之间有边并且两个点不是从一个点来的,那么两个加油站连一条边,然后跑最小生成树,在树上倍增即可 注意判不联通 #include #include #include #include #include #include #include #include #include #include #include #include原创 2016-06-20 16:37:35 · 686 阅读 · 0 评论 -
BZOJ3732 Network
最小生成树完了树倍增就好了……傻逼题…… #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; #define MAXN 30010 #define MAXM原创 2016-08-22 10:32:12 · 706 阅读 · 0 评论 -
BZOJ3714 [PA2014]Kuglarz
知道了第x~y个杯子的奇偶性,就相当于知道了x和x-1之间的缝到y和y+1之间的缝的奇偶性 知道了缝a到缝b的奇偶性和缝b到缝c的奇偶性,我们就知道了缝a到缝c的奇偶性 要知道所有杯子底下有没有球,我们就要知道每个杯子左右两端的缝之间的奇偶性,也就相当于要知道任意两个缝之间的奇偶性 所以这就是一道花式最小生成树问题-_-知道奇偶性相当于连一条边,整个图联通了就都能知道了 #include原创 2016-08-24 15:39:48 · 1300 阅读 · 0 评论 -
BZOJ4883 [Lydsy2017年5月月赛]棋盘上的守卫
把行和列看成点,那么(x,y)这个各种就代表在第x行和第j列之间连一条权值为w(x,y)的边 每一行和每一列都要被一个守卫覆盖,那么就相当于对于每个点(每一行和每一列),我们要在他所相连的边中选择一条没有被选择过的边,并把这条边变成有向边,从自己出发,指向另一端。比如是从第x行指向第y列,那么就意味着在(x,y)防止一个行守卫,反之亦然 那么我们发现所有我们选出来的边一定组成一个环套树森林原创 2017-05-18 18:45:08 · 425 阅读 · 0 评论