use proconio::input; use ac_library::MfGraph; fn main(){ input!{ n: usize, m: usize, a: [(i32, i32); n], e: [(usize, usize, i32); m], } let mut f = MfGraph::::new(n+2); let s = n; let t = n+1; let mut sm = 0; for i in 0..n{ f.add_edge(s, i, a[i].0); f.add_edge(i, t, a[i].1); sm += a[i].0+a[i].1; } for (u, v, c) in e{ f.add_edge(u-1, v-1, c); f.add_edge(v-1, u-1, c); // sm += c; } let ans = sm-f.flow(s, t); println!("{}", ans); // println!("{}", f.flow(s, t)); }