摘要: 题目链接最大二分图匹配 = 最小点覆盖。。。上匈牙利模版。。 1 #include <cstdio> 2 #include <cstring> 3 using namespace std; 4 int p[501][501],used[501],linker[501]; 5 int n; 6 int dfs(int x) 7 { 8 int i; 9 for(i = 1; i <= n; i ++)10 {11 if(p[x][i]&&!used[i])12 {13 used[i] = 1;14 ... 阅读全文
posted @ 2012-12-06 18:52 Naix_x 阅读(148) 评论(0) 推荐(0) 编辑
摘要: 题目链接经讲解后过了,对题意和拓扑排序都不怎么会。正向建图,找标号小的入度为0的点,是错误的。。。正解反向建图,然后把找到标号大的入度为0的点,然后把大的重量赋给他。如何证明的,我不懂。。。 1 #include <cstdio> 2 #include <cstring> 3 #include <cmath> 4 using namespace std; 5 int p[201][201],in[201],out[201],o[201],n; 6 int judge() 7 { 8 int i,j,t,z; 9 for(i = n; i >= 1; i 阅读全文
posted @ 2012-12-06 16:08 Naix_x 阅读(158) 评论(0) 推荐(0) 编辑
摘要: 题目链接其实我不懂拓扑排序啊。。。看了DISCUSS,需要判断是不是有环,我傻呼呼的写了个DFS。。。拓扑排序没学好啊。。 1 #include <iostream> 2 #include <cstdio> 3 #include <cstring> 4 #include <cmath> 5 #include <algorithm> 6 using namespace std; 7 char str[10001][4],ch[31]; 8 int in[50],out[50],o[301],in2[50],out2[50],z[27]; 阅读全文
posted @ 2012-12-06 09:29 Naix_x 阅读(150) 评论(0) 推荐(0) 编辑