6969
7070 /// Returns (maximum flow, cost)
7171 pub fn flow ( & mut self , source : usize , sink : usize , flow_limit : T ) -> ( T , T ) {
72- * self . slope ( source, sink, flow_limit) . last ( ) . unwrap ( )
72+ self . slope ( source, sink, flow_limit) . pop ( ) . unwrap ( )
7373 }
7474
7575 pub fn slope ( & mut self , source : usize , sink : usize , flow_limit : T ) -> Vec < ( T , T ) > {
@@ -86,11 +86,11 @@ where
8686 let mut prev_cost: Option < T > = None ;
8787 let mut result = vec ! [ ( flow, cost) ] ;
8888 while flow < flow_limit {
89- if !self . dual_ref ( source, sink, & mut dual, & mut prev_v, & mut prev_e) {
89+ if !self . refine_dual ( source, sink, & mut dual, & mut prev_v, & mut prev_e) {
9090 break ;
9191 }
92- let mut c = flow_limit - flow;
9392
93+ let mut c = flow_limit - flow;
9494 let mut v = sink;
9595 while v != source {
9696 c = std:: cmp:: min ( c, self . g [ prev_v[ v] ] [ prev_e[ v] ] . cap ) ;
@@ -117,7 +117,7 @@ where
117117 result
118118 }
119119
120- fn dual_ref (
120+ fn refine_dual (
121121 & self ,
122122 source : usize ,
123123 sink : usize ,
0 commit comments