
图论
cadongllas
这个作者很懒,什么都没留下…
展开
-
uva11082 网络流经典模型 建图详解
题意:知道矩阵的前i行之和,和前j列之和(任意i和j都可以)。求这个矩阵。每个格子中的元素必须在1~20之间。矩阵大小上限20*20 首先我们可以随意写出一个答案满足行的限制,然后就需要在每行和不变的情况下,通过调度,满足列的限制,而这个调度的过程,同网络流的流的思想正式契合的,这是网络流思想的很好体现。 建图就是源点连向每个行表示这行的和,然后每列连向汇点,表示这列的和,然后i行向j原创 2016-09-03 10:40:53 · 507 阅读 · 0 评论 -
hdu 3488 二分图完美匹配
题意:有N个城市,M条街道,每条街道是单向的,现在要你设计多条路线覆盖所有的点,每条路线都是一个环,并且每个点仅能被一条路线覆盖且只经过一次 每个点一个入度一个出度,拆点然后二分图,用km跑完美匹配就可以得到路线 #include #include #include #include #define rep(i, j, k) for(int i = j; i <= k; i++原创 2016-09-03 14:29:17 · 311 阅读 · 0 评论 -
poj 1251 最小生成树
题意:用桥把n个岛屿连接起来 直接最小生成树就行 #include #include #include #include #include #define rep(i, j, k) for(int i = j; i <= k; i++) #define maxn 200009 using namespace std; int n, m, tt, father[1009];原创 2016-09-03 15:32:26 · 324 阅读 · 0 评论 -
poj 2031 Building a Space Station
题意: 就是给出三维坐标系上的一些球的球心坐标和其半径,搭建通路,使得他们能够相互连通。如果两个球有重叠的部分则算为已连通,无需再搭桥。求搭建通路的最小费用 还是最小生成树。。 #include #include #include #include #include #include #define rep(i, j, k) for(int i = j; i <= k; i原创 2016-09-03 15:46:23 · 182 阅读 · 0 评论 -
poj 3026 最小生成树
题意:在一个y行 x列的迷宫中,有可行走的通路空格’ ‘,不可行走的墙’#’,还有两种英文字母A和S,现在从S出发,要求用最短的路径L连接所有字母,输出这条路径L的总长度 最小生成树 #include #include #include #include #include #include #include #define rep(i, j, k) for(int i =原创 2016-09-03 20:01:52 · 224 阅读 · 0 评论 -
poj 2421
题意:还是给你n个点,然后求最小生成树。特殊之处在于有一些点之间已经连上了边 最小生成树直接做#include #include #include #include #include #define rep(i, j, k) for(int i = j; i <= k; i++) #define maxn 200009 using namespace std; int n,原创 2016-09-03 20:15:40 · 206 阅读 · 0 评论