jacint@159: #include jacint@160: #include jacint@159: jacint@372: #include jacint@372: #include jacint@159: #include jacint@160: #include jacint@372: #include jacint@170: jacint@159: using namespace hugo; jacint@159: jacint@160: int main(int, char **) { jacint@372: jacint@372: typedef ListGraph Graph; jacint@160: jacint@372: typedef Graph::Node Node; jacint@372: typedef Graph::EdgeIt EdgeIt; jacint@372: jacint@372: Graph G; jacint@211: Node s, t; jacint@372: Graph::EdgeMap cap(G); jacint@160: readDimacsMaxFlow(std::cin, G, s, t, cap); jacint@372: Timer ts; jacint@159: jacint@372: std::cout << "Testing dijkstra.h with Fibonacci-heap jacint@372: implementation fib_heap.h ..." << std::endl; jacint@372: jacint@372: Dijkstra > jacint@372: > dijkstra_test(G, s, cap); jacint@372: ts.reset(); jacint@372: dijkstra_test.run(); jacint@372: std::cout << "elapsed time: " << ts << std::endl; jacint@160: double post_time=currTime(); jacint@160: jacint@372: std::cout << "running time: " << post_time-pre_time << " sec"<< std::endl; jacint@159: jacint@372: EachEdgeIt e; jacint@170: jacint@372: int hiba=0; jacint@372: jacint@372: int edge=0; jacint@372: jacint@372: for ( G.getFirst(e) ; G.valid(e); G.next(e) ) { jacint@372: NodeIt u=G.tail(e); jacint@372: NodeIt v=G.head(e); jacint@372: ++edge; jacint@372: if ( dijkstra_test.dist(v) - dijkstra_test.dist(u) > cap.get(e) ) { jacint@372: std::cout<<"Hiba: "<