We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
2 parents 6593df1 + 463f0e2 commit 72fe2a1Copy full SHA for 72fe2a1
src/maxflow.rs
@@ -201,7 +201,7 @@ where
201
self.graph.g[e_to][e_rev].cap -= d;
202
res += d;
203
if res == up {
204
- break;
+ return res;
205
}
206
207
self.iter[v] = self.graph.g[v].len();
@@ -320,4 +320,15 @@ mod test {
320
321
assert_eq!(graph.flow(s, t), 2);
322
323
+
324
+ #[test]
325
+ fn test_dont_repeat_same_phase() {
326
+ let n = 100_000;
327
+ let mut graph = MfGraph::new(3);
328
+ graph.add_edge(0, 1, n);
329
+ for _ in 0..n {
330
+ graph.add_edge(1, 2, 1);
331
+ }
332
+ assert_eq!(graph.flow(0, 2), n);
333
334
0 commit comments