摘要:
题目:http://poj.org/problem?id=3020这个题主要是构图比较难,处理方法是把城市编号然后如果在上下左右四个方向存在城市的话,那么这两个城市就可以组成一条边,构成的图是一个无向图,DAG图的最小路径覆盖=节点数(n)-最大匹配数;无向图的最小路径覆盖=节点数(n)-最大匹配数/2;代码:View Code 1 #include <iostream> 2 #include<cstdio> 3 #include<cstring> 4 using namespace std; 5 int map[405][405]; 6 int st[45 阅读全文
摘要:
题目:http://poj.org/problem?id=3041把X作为n1点集,y作为n2点集,x->y建立二分图,最小顶点覆盖。。View Code 1 #include <iostream> 2 #include<cstdio> 3 #include<cstring> 4 using namespace std; 5 int n,k; 6 int map[505][505]; 7 int vis[505]; 8 int link[505]; 9 int find(int x)10 {11 int i;12 for(i=1;i<=n;i++ 阅读全文