equal
  deleted
  inserted
  replaced
  
    
    
|     12 #include <leda_graph_wrapper.h> |     12 #include <leda_graph_wrapper.h> | 
|     13 #include <sage_graph.h> |     13 #include <sage_graph.h> | 
|     14 //#include <smart_graph.h> |     14 //#include <smart_graph.h> | 
|     15 //#include <dimacs.h> |     15 //#include <dimacs.h> | 
|     16 #include <hugo/time_measure.h> |     16 #include <hugo/time_measure.h> | 
|     17 #include <hugo/for_each_macros.h> |     17 #include <for_each_macros.h> | 
|     18 #include <hugo/graph_wrapper.h> |     18 #include <hugo/graph_wrapper.h> | 
|     19 #include <bipartite_graph_wrapper.h> |     19 #include <bipartite_graph_wrapper.h> | 
|     20 #include <hugo/maps.h> |     20 #include <hugo/maps.h> | 
|     21 #include <max_flow.h> |     21 #include <hugo/max_flow.h> | 
|     22  |     22  | 
|     23 /** |     23 /** | 
|     24  * Inicializalja a veletlenszamgeneratort. |     24  * Inicializalja a veletlenszamgeneratort. | 
|     25  * Figyelem, ez nem jo igazi random szamokhoz, |     25  * Figyelem, ez nem jo igazi random szamokhoz, | 
|     26  * erre ne bizzad a titkaidat! |     26  * erre ne bizzad a titkaidat! | 
|     93   BGW bgw(g, bipartite_map); |     93   BGW bgw(g, bipartite_map); | 
|     94  |     94  | 
|     95   BGW::NodeMap<int> dbyj(bgw); |     95   BGW::NodeMap<int> dbyj(bgw); | 
|     96   BGW::EdgeMap<int> dbyxcj(bgw); |     96   BGW::EdgeMap<int> dbyxcj(bgw); | 
|     97  |     97  | 
|     98   typedef stGraphWrapper<BGW> stGW; |     98   typedef stBipartiteGraphWrapper<BGW> stGW; | 
|     99   stGW stgw(bgw); |     99   stGW stgw(bgw); | 
|    100   ConstMap<stGW::Edge, int> const1map(1); |    100   ConstMap<stGW::Edge, int> const1map(1); | 
|    101  |    101  | 
|    102   Timer ts; |    102   Timer ts; | 
|    103   stGW::EdgeMap<int> flow(stgw); |    103   stGW::EdgeMap<int> flow(stgw); | 
|    107   ts.reset(); |    107   ts.reset(); | 
|    108   FOR_EACH_LOC(stGW::EdgeIt, e, stgw) flow.set(e, 0); |    108   FOR_EACH_LOC(stGW::EdgeIt, e, stgw) flow.set(e, 0); | 
|    109 //  while (max_flow_test.augmentOnShortestPath()) { } |    109 //  while (max_flow_test.augmentOnShortestPath()) { } | 
|    110   typedef SageGraph MutableGraph; |    110   typedef SageGraph MutableGraph; | 
|    111 //  while (max_flow_test.augmentOnBlockingFlow1<MutableGraph>()) { |    111 //  while (max_flow_test.augmentOnBlockingFlow1<MutableGraph>()) { | 
|    112   while (max_flow_test.augmentOnBlockingFlow2()) { |    112 //   while (max_flow_test.augmentOnBlockingFlow2()) { | 
|    113    std::cout << max_flow_test.flowValue() << std::endl; |    113 //    std::cout << max_flow_test.flowValue() << std::endl; | 
|    114   } |    114 //   } | 
|         |    115   max_flow_test.run(); | 
|    115   std::cout << "max flow value: " << max_flow_test.flowValue() << std::endl; |    116   std::cout << "max flow value: " << max_flow_test.flowValue() << std::endl; | 
|    116   std::cout << "elapsed time: " << ts << std::endl; |    117   std::cout << "elapsed time: " << ts << std::endl; | 
|    117  |    118  | 
|    118   ts.reset(); |    119   ts.reset(); | 
|    119   FOR_EACH_LOC(stGW::EdgeIt, e, stgw) flow.set(e, 0); |    120   FOR_EACH_LOC(stGW::EdgeIt, e, stgw) flow.set(e, 0); |