1 #include2 #include 3 #include 4 #define M 100009 5 #define inf 2139062143 6 using namespace std; 7 int n,m,a[102][102],b[102][102],c[102][102],tot,cnt=1,T,ans,head[M],d[M],q[2*M],next[10*M],u[10*M],v[10*M]; 8 int xx[4]={ 0,0,1,-1},yy[4]={ 1,-1,0,0}; 9 bool bfs() 10 { 11 memset(d,0,sizeof(int)*(T+1)); 12 int h=0,t=1; 13 q[1]=0; 14 d[0]=1; 15 for(;h
网络流最小割 建边非常神奇。
S向i连变容量为文[i]+文[i][j]/2,向j连边容量为文[j]+文[i][j]/2。i向T连边容量为理[i]+理[i][j]/2,j向T连边容量为理[j]+理[i][j]/2;i于j连边,容量为文[i][j]/2+理[i][j]/2.