Lang:G++
Edit12345678910111213141516171819202122232425262728293031#include <iostream>#include <vector>#include <queue>using namespace std;int maxinf = 1000;void modifygraph(vector<vector<int> > &graph, vector<int> &path, int D, int flow){int m = D;while(m){int t = path[m];graph[t][m] -= flow;graph[m][t] += flow;m = t;}return;}int findAugmentPath(vector<vector<int> > &graph,int D){queue<int> q;q.push(0);vector<bool> visited(D+1, false);visited[0] = true;vector<int> capacity(D+1, maxinf);vector<int> path(D+1, 0);while(!q.empty()){int s = q.front();q.pop();if(s == D){modifygraph(graph, path, D, capacity[D]);