二分匹配
。
infinity°º
stay hungry stay foolish
展开
-
hdu1281
int main(){ int i,j,k; int ca=1; while(scanf("%d%d%d",&M,&N,&k)!=EOF){ memset(g,0,sizeof(g)); while(k--){ scanf("%d%d",&i,&j); g[i][j]=1; } int sum=hu(); int cnt=0; for(int m=1;m<=M;m++) for(int n=1;n<=N;n.原创 2021-07-19 16:42:10 · 55 阅读 · 0 评论 -
hdu1068
#include<bits/stdc++.h> using namespace std; #define MAXN 1005 int M,N,used[MAXN],lin[MAXN],g[MAXN][MAXN]; bool dfs(int m){ for(int n=0;n<M;n++){ if(used[n]&&g[m][n]){ used[n]=0; if(lin[n]==-1||dfs(lin[n])){ lin[n]=m;return t.原创 2021-07-19 16:24:34 · 40 阅读 · 0 评论 -
hdu2063
#include<bits/stdc++.h> using namespace std; const int maxn=5e2+7; int k,m,n,a,b,vis[maxn],lin[maxn]; int g[maxn][maxn]; int dfs(int u){ for(int v=1;v<=n;v++){ if(g[u][v]&&!vis[v]){ vis[v]=1;//对这个u,v访问过了 //u和v直接可配 ||lin[v],能找到另..原创 2021-07-16 20:24:34 · 51 阅读 · 0 评论