MCPcopy Create free account
hub / github.com/SuprDewd/CompetitiveProgramming / test

Function test

code/graph/dinic.test.cpp:76–119  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

74}
75
76void test() {
77 /* Field testing: Uva10330, UVa10480, UVa12125, Kattis maxflow */
78
79 flow_network mf(4);
80 mf.add_edge(0, 1, 133700);
81 mf.add_edge(0, 2, 133700);
82 mf.add_edge(1, 2, 1);
83 mf.add_edge(1, 3, 133700);
84 mf.add_edge(2, 3, 133700);
85 assert_equal(2 * 133700, mf.max_flow(0, 3));
86
87 mf = flow_network(5);
88 mf.add_edge(1, 2, 100);
89 mf.add_edge(1, 3, 50);
90 mf.add_edge(2, 3, 50);
91 mf.add_edge(2, 4, 50);
92 mf.add_edge(2, 0, 50);
93 mf.add_edge(3, 4, 100);
94 mf.add_edge(4, 0, 125);
95 assert_equal(150, mf.max_flow(1, 0));
96
97 mf = flow_network(5);
98 mf.add_edge(1, 2, 100);
99 mf.add_edge(1, 3, 50);
100 mf.add_edge(2, 3, 50);
101 mf.add_edge(2, 4, 50);
102 mf.add_edge(2, 0, 50);
103 mf.add_edge(3, 4, 100);
104 mf.add_edge(4, 0, 75);
105 assert_equal(125, mf.max_flow(1, 0));
106
107 mf = flow_network(5);
108 mf.add_edge(1, 2, 100);
109 mf.add_edge(1, 3, 50);
110 mf.add_edge(2, 4, 5);
111 mf.add_edge(2, 0, 5);
112 mf.add_edge(3, 4, 100);
113 mf.add_edge(4, 0, 125);
114 assert_equal(60, mf.max_flow(1, 0));
115
116 test1();
117 test2();
118 test3();
119}
120// vim: cc=60 ts=2 sts=2 sw=2:

Callers

nothing calls this directly

Calls 7

flow_networkClass · 0.70
test1Function · 0.70
test2Function · 0.70
test3Function · 0.70
assert_equalFunction · 0.50
add_edgeMethod · 0.45
max_flowMethod · 0.45

Tested by

no test coverage detected