- 博客(11)
- 收藏
- 关注
原创 【vijos】P1034家族
描述若某个家族人员过于庞大,要判断两个是否是亲戚,确实还很不容易,现在给出某个亲戚关系图,求任意给出的两个人是否具有亲戚关系。规定:x和y是亲戚,y和z是亲戚,那么x和z也是亲戚。如果x,y是亲戚,那么x的亲戚都是y的亲戚,y的亲戚也都是x的亲戚。格式输入格式第一行:三个整数n,m,p,(n以下m行:每行两个数Mi,Mj,1接下来p行:每行两
2014-06-30 21:58:03 453
转载 【图】最小费用最大流MCMF
struct Edge{ int from,to,cap,flow,cost;};struct MCMF{ int n,m,s,t; vector edges; vector G[maxn]; int inq[maxn]; int d[maxn]; int p[maxn]; int a[maxn]; void init(int n) { this->n=n;
2014-06-26 21:31:16 480
转载 【图】网络流ISAP
struct ISAP { int n, m, s, t; vector edges; vector G[maxn]; // 邻接表,G[i][j]表示结点i的第j条边在e数组中的序号 bool vis[maxn]; // BFS使用 int d[maxn]; // 从起点到i的距离 int cur[maxn]; // 当
2014-06-26 21:04:10 433
转载 【图】Dinic(n^2m)
struct Edge{ int from,to,cap,flow; void AddEdge(int from,int to,int cap) { edges.push_back((Edge){from,to,cap,0}); edges.push_back((Edge){to,from,0,0}}); m=edges.size(); G[from].push_bac
2014-06-26 16:28:59 419
转载 【图】O(VE)的匈牙利(C)
#include#include bool g[201][201];int n,m,ans;bool b[201];int link[201]; bool init(){ int _x,_y; memset(g,0,sizeof(g)); memset(link,0,sizeof(link)); ans=0;
2014-06-24 21:52:00 422
原创 【vijos】P1082丛林探险DFS+剪枝版本
未调试#include#include#include#define MAXN 5010#define MAXE 40010#define INF 100000typedef struct{ int v; int k; int t;}edges;typedef struct{ int degree[MAXN]; edges edge[MAXN][MAXE];}g
2014-06-24 21:35:34 575
转载 二分图带权匹配 KM算法与费用流模型建立
转自http://hi.baidu.com/lerroy312/item/42e718ba58a1f8df85dd795f[二分图带权匹配与最佳匹配]什么是二分图的带权匹配?二分图的带权匹配就是求出一个匹配集合,使得集合中边的权值之和最大或最小。而二分图的最佳匹配则一定为完备匹配,在此基础上,才要求匹配的边权值之和最大或最小。二分图的带权匹配与最佳匹配不等价,也不互相包含。我们可以使用
2014-06-22 21:09:17 490
原创 【wikioi】1028花店橱窗布置
//暴力搜索#include#include#include#define MAX 110int d[MAX][MAX]; int f,v; int lie[MAX]; int vis[MAX];int ds(int dep){ //如果dep达到 f 则自动跳出 /* 如果没有 遍历搜索每一种可能 如果满足要求,开始下一层递归
2014-06-21 21:35:01 781
原创 【wikioi】N皇后问题
#include#include#include#define MAX 15int n;int place(int dep,int s[]){ int i,j,k; int x,y; x=s[dep],y=dep; for(i=1;i<y;i++) { if( (x==s[i]) || abs(s[i]-x)==abs(i-y) ) {
2014-06-19 17:03:33 444
原创 【wikioi】1026逃跑的拉尔夫
#include#include#include#include#include#include#include#include#include#includeusing namespace std;struct bign { int x,y,time;};int dx[5]={0,-1,0,1,0}, dy[5]={0,0,-1,0,1};int n,m,b[10
2014-06-12 17:00:01 497
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人