Lang:G++
Edit12345678910111213141516171819202122232425262728293031#include <bits/stdc++.h>using namespace std;#define rep(i,a,b) for(int i=a;i<b;i++)#define INF 1000000000typedef long long ll;const int MAXN=503;int G[MAXN][MAXN];int n,m,visit[MAXN];int dfs(int s,int t,int f){if(s==t) return f;visit[s]=1;rep(i,0,n){if(!visit[i] && G[s][i]){int d = dfs(i,t,min(f,G[s][i]));if(d>0){G[s][i]-=d;G[i][s]+=d;return d;}}}return 0;}void bfs(int s,vector<int>&vec){memset(visit,0,sizeof(visit));queue<int> q;q.push(s);vec.push_back(s);visit[s]=1;