cf 546 E dinic網路流優化模板

2021-07-03 02:06:08 字數 828 閱讀 8522

/*

author :hrw

思路:建圖,最大流,注意反向邊,容量,流量為0

建源點,匯點,

最後輸出路徑保證每條邊的流量都要輸出,只需之前統計有哪些邊流量發生了變化

*/#include using namespace std;

const int n=305;

const int inf=0x3f3f3f3f;

struct edge

};vector edges;

vector g[n];

int d[n],cur[n],num[n][n];

int n,m,s,t,a,b,c;

bool vis[n],flag;

void init()

}void add_edge(int from,int to,int cap)

bool bfs(int s,int t)}}

return vis[t];

}int dfs(int s,int k)

}return flow;

}int max_flow(int s,int t)

return flow;

}int main()

for(int i=1; i<=n; i++)

if(suma!=sumb)

while(m--)

int ans=max_flow(s,t);

//cout<0) num[i][e.to-n]=e.flow;}}

for(int i=1; i<=n; i++)

}return 0;

}