最大ネットワークストリームDinicアルゴリズム(最適化版)
1567 ワード
/*
Name: Dinic ( )
Copyright:
Author:
Date: 10-06-17 22:08
Description: Dinic 。
, 。
, , , ;
, 。
。
*/
#include
#include
using namespace std;
const int MAXV=2000; //
const int MAXE=2000; //
const int INFINITY = 0x7fffffff; //
int capacity[MAXV][MAXV]; //
int flow[MAXV]; //
int pre[MAXV]; // ,
int dis[MAXV]; //
int block[MAXV]; //
int MaxFlow_Dinic(int src, int des, int n);
bool BFS(int src, int des, int n); //
int DFS(int src, int des, int n, int v);//
int main()
{
int m, n, u, v;
ifstream fcin("maxflow.txt");
if (!fcin.is_open())
{
cout << "Error opening file"; exit (1);
}
fcin >> n >> m;
for(int i=0; i> u >> v;
fcin >> capacity[u][v];
}
cout << n << " " << m << endl;
for (int i=0; i