图论
文章平均质量分 71
ACM-ICPC1
这个作者很懒,什么都没留下…
展开
-
HDU 2066 一个人的旅行 最短路问题
这题写坑了。。居然写了一个点。。不久是裸的SPFA么,居然敲屎了!啥也不说了,贴代码!#include #include #include #include #include using namespace std;const int INF = 0x7f7f7f;const int MAX = 1020;int start[MAX], dis[MAX];int原创 2013-11-01 21:26:59 · 576 阅读 · 0 评论 -
SGU 176 Flow construction 网络流 有上下界限制最小流
1.构建附加网络2.求ss 到 tt 的最大流3.加入 t 到 s 容量为 INF 的边4.再对 ss 到 tt 求一次最大流5.若 ss 和 tt 满流,则 t 到 s 的流量即位最小流6.若 5 不满足,则无可行流#include#include#include#include#include#includeusing namespace std;cons原创 2013-12-03 21:30:05 · 500 阅读 · 0 评论 -
HDU 3549 Flow Problem 网络流 基础题
DINIC求网络流最大流贴代码(AC,125MS)#include#include#include#include#include#includeusing namespace std;const int INF = 0x7f7f7f7f;const int MAXN = 20;const int MAXM = 1005;int n, m, s, t, cnt;int原创 2013-12-02 15:08:26 · 457 阅读 · 0 评论 -
SGU 194 Reactor Cooling 有上下界的网络流 网络流拆点
无源汇有上下界限制网络流拆点可解设超级源点 ss 和超级汇点 ttdeg[i] = i 点的流入容量和 - i 点的流出容量和若 deg[i] > 0 建立 ss -> i 边权为 deg[i] 的边 强行流出 deg[i] 的流量若 deg[i] tt 边权为 -deg[i] 的边 强行流入 -deg[i] 的流量贴代码(AC,31ms)#include#includ原创 2013-12-02 16:18:53 · 519 阅读 · 0 评论 -
HDU 1532 Drainage Ditches 网络流 模板题
网络流 模板题重新写了一个,更新一下模板。#include #include #include #include using namespace std;const int MAXN = 205;const int MAXM = MAXN * MAXN;const int INF = 0x7ffffff;struct dinic_{ int que[MAXN],原创 2013-12-04 21:16:44 · 509 阅读 · 0 评论 -
HDU 1598 Find the most comfortable road 二分枚举答案 或 并查集
我是用的二分,这样似乎要慢点并查集的那个没写。。窝真的好菜。。#include #include #include #include #include #include #include using namespace std;const int MAX = 205;const int MAXM = 1005;int spd[MAXM];bool vis[MAX]原创 2014-04-03 19:37:07 · 379 阅读 · 0 评论 -
HDU 1811 Rank of Tetris 拓扑排序 AND 并查集
先用并查集把相等的情况合并了再使用拓扑排序找冲突具体是用大的数向小的数建边,然后判断冲突#include #include #include #include #include #include #include #include using namespace std;const int MAX = 10005;const int MAXM = 20005;in原创 2014-04-03 20:58:01 · 426 阅读 · 0 评论 -
HDU 3926 Hand in Hand 并查集
求图的同构因为只有两个度,所以每个图的联通分原创 2014-04-20 09:00:22 · 413 阅读 · 0 评论 -
HDU 携程编程大赛 1003 携程全球数据中心建设 Prim OR Kruskal
水题先求两两jia#include #include #include #include #include #include #include #include #include #include #include #include #define BUG puts("HERE!")using namespace std;const int MAX = 105;原创 2014-04-10 21:46:04 · 551 阅读 · 0 评论 -
minCostMaxFlow Template
#include #include #include using namespace std;const int MAXN = 200;const int INF = 0x7fffffff;struct MCMF_{ int head[MAXN], cnt; int pre[MAXN], pos[MAXN]; int dis[MAXN], que[MAXN *原创 2013-12-06 11:38:55 · 442 阅读 · 0 评论 -
HRBEU 1392 朋友相会 SPFA 最短路
SPFA 求最短路附代码(AC,270MS)#include#include#include#include#includeusing namespace std;const int MAX = 1e3 + 5;const int INF = 0x7fffff;int n, m;int disa[MAX], disb[MAX];struct edge_{ int原创 2013-11-13 20:33:39 · 731 阅读 · 0 评论 -
HRBEU 1390 帮派 并查集 + 向量偏移
并查集 + 向量偏移附代码(AC,10MS)#include#include#includeusing namespace std;const int MAX = 1e5 + 5;int f[MAX], r[MAX];void init(int n){ for(int i = 1; i <= n; ++i) f[i] = i, r[i] = 0;}原创 2013-11-13 20:35:11 · 777 阅读 · 0 评论 -
HDU 2063 过山车 基础匈牙利算法
二分图匹配问题匈牙利算法贴代码:(AC,0ms)#include#include#include#include#includeusing namespace std;const int MAX = 1e3+5;bool g[MAX][MAX];int res[MAX], vis[MAX];int k, m, n, s, t;int find(int a){原创 2013-11-01 20:39:56 · 562 阅读 · 0 评论 -
HDU 2102 A计划 广度优先搜索
两层,加上一点剪枝的光搜贴代码:(AC , 15ms)#include#include#includeusing namespace std;const int MAX = 15;char map[2][MAX][MAX];int move[4][2] = {{1, 0}, {0, 1}, {-1, 0}, {0, -1}};int n, m, t;struct poi原创 2013-11-08 18:52:55 · 490 阅读 · 0 评论 -
HDU 1068 最大独立集
最大独立集 = V(总) - Max_Match( graph );贴代码:(AC,2328MS)#include#include#include#includeusing namespace std;const int MAX = 1005;int res[MAX], n;int num, now, to;bool vis[MAX], g[MAX][MAX];bo原创 2013-11-10 21:42:46 · 612 阅读 · 0 评论 -
HDU 4771 Stealing Harry Potter's Precious 2013亚洲区域赛杭州赛区 B 题题解
2013亚洲区域赛杭州赛区B题题解原创 2013-11-09 17:15:41 · 1202 阅读 · 0 评论 -
HDU 1856 More is better 并查集
题目数据比较水,改天写个离散化的代码;还我一点我要吐槽,为神马ans = ans > res[i] ? ans : res[i];就超时了,而if(ans < res[i]) ans = res[i];就过了呢,他们到底相差多少呢?附我的代码(AC,390MS)#include#include#include#includeusing namespace原创 2013-11-13 18:25:26 · 709 阅读 · 0 评论 -
HDU 1232 畅通工程 并查集
并查集贴代码:(AC,32ms)#include#include#includeusing namespace std;const int MAX = 1e3 + 5;int f[MAX];void init(int n){ for(int i = 1; i <= n; ++i) f[i] = i;}int find(int a){ re原创 2013-11-13 16:31:22 · 645 阅读 · 0 评论 -
HDU 1829 A Bug's Life 并查集 + 向量偏移
带向量偏移的并查集附代码(AC,)#include#include#includeusing namespace std;const int MAX = 2005;int sex[MAX], f[MAX];void init(int n){ for(int i = 1; i <= n; ++i){ f[i] = i; sex[i] =原创 2013-11-13 17:22:34 · 672 阅读 · 0 评论 -
POJ 1108 食物链 并查集 + 向量偏移
POJ 1108向量偏移先贴在这里,回去看看。#include using namespace std;int p[50005], r[50005];int n, d, k;int found(int x) { if(x == p[x]) return x; int t = p[x]; p[x] = found(t); r[x原创 2013-11-12 21:57:52 · 545 阅读 · 0 评论 -
SPFA算法之邻接表实现
SPFA(Shortest Path Fast Algorithm)原创 2013-08-16 06:57:18 · 838 阅读 · 0 评论