随笔分类 -  图论

摘要:看这位大佬的题解就可以了。 http://blog.csdn.net/Fuxey/article/details/50573495 代码: 1 #include<iostream> 2 #include<cstdio> 3 #include<algorithm> 4 #include<cstring 阅读全文
posted @ 2017-04-07 15:24 gjghfd 阅读(79) 评论(0) 推荐(0)
摘要:先用floyd求出不经过大于i或大于j的点的i,j间最短路径,然后考虑这样建图: 对于每个点i,将其拆分成i、i',连边: s -> i' 容量为INF,费用为0 s -> 1 容量为k,费用为0 i' -> j 容量为1,费用为dist[i][j] i -> t 容量为1,费用为0 此时这张图的最 阅读全文
posted @ 2017-03-13 20:09 gjghfd 阅读(201) 评论(0) 推荐(0)
摘要:建模: 将用户群和中转站看成点。对于用户群i,将其向a[i],b[i]连一条边,将c[i]作为它的权值。对于中转站i,将-p[i]作为它的权值。 然后问题就转化为求图的最大权闭合子图。 图的闭合子图是指一个点集V,满足对于任意i∈V,i的所有出边指向的点∈V。 根据定义可以知道,图的闭合子图是允许超 阅读全文
posted @ 2017-02-21 15:48 gjghfd 阅读(184) 评论(0) 推荐(1)
摘要:这题有一种神奇的并查集做法。 将每种属性作为一个点,每种装备作为一条边,则可以得到如下结论: 1、如果一个有n个点的连通块有n-1条边,则我们可以满足这个连通块的n-1个点。 2、如果一个有n个点的连通块的边数大于n-1,则我们可以满足这个连通块的所有点。 定义b数组,每读入一个装备的两个属性x,y 阅读全文
posted @ 2016-10-10 19:32 gjghfd 阅读(191) 评论(0) 推荐(1)
摘要:http://www.lydsy.com/JudgeOnline/problem.php?id=1001 思路:这应该算是经典的最大流求最小割吧。不过题目中n,m<=1000,用最大流会TLE,所以要利用平面图的一些性质。 这里讲一下平面图的对偶图性质。 在平面图中,所有边将图分成了n个平面。我们将 阅读全文
posted @ 2016-09-12 21:38 gjghfd 阅读(286) 评论(0) 推荐(1)
摘要:题目大意: 爱丽丝要拍电影,有n部电影,规定爱丽丝每天只能拍一部电影,每部电影在每个礼拜只有固定的几天可以拍电影,只可以拍前面w个礼拜,并且这部电影要拍d天,问爱丽丝能不能拍完所有的电影。 思路: 建图。点1~350代表天数(因为最多只有350天),点351~370代表电影(最多只有20部电影)。从 阅读全文
posted @ 2016-08-22 11:33 gjghfd 阅读(266) 评论(0) 推荐(1)
摘要:http://www.lydsy.com/JudgeOnline/problem.php?id=1202 记s[i]=a[1]+a[2]+...+a[i],即s[i]为前缀和。再令v[i]=s[f[i]]-s[i],其中f[i]为i的父亲。对于每个读入的x,y,k,将x,y视为结点,如果x与y的根结 阅读全文
posted @ 2016-07-18 09:29 gjghfd 阅读(248) 评论(0) 推荐(1)
摘要:题目大意: 在数学中,我们常常需要完成若干个命题的等价性证明。比如,有4个命题a,b,c,d,我们证明a↔b,然后b↔c,最后c↔d。注意每次证明都是双向的,因此一共完成了6次推导。另一种方法是a→b,然后b→c,接着c→d,最后d→a,只需4次。现在你的任务是证明n个命题全部等价,且你的朋友已经为 阅读全文
posted @ 2016-06-25 12:19 gjghfd 阅读(462) 评论(0) 推荐(1)
摘要:题目大意: 每一头牛的愿望就是变成一头最受欢迎的牛。现在有N头牛,给你M对整数(A,B),表示牛A认为牛B受欢迎。 这 种关系是具有传递性的,如果A认为B受欢迎,B认为C受欢迎,那么牛A也认为牛C受欢迎。你的任务是求出有多少头 牛被所有的牛认为是受欢迎的。 先用tarjan求出每个强连通分量,再缩点 阅读全文
posted @ 2016-06-24 20:10 gjghfd 阅读(2449) 评论(0) 推荐(2)