1impl Solution {2pub fn find_min_moves(machines: Vec<i32>) -> i32 {3let total: i32 = machines.iter().sum();4let machines_size = machines.len() as i32;56if total % machines_size != 0 {7return -1;8}910let avg = total / machines_size;11let mut cnt = 0;12let mut max_cnt = 0;1314for i in 0..machines_size {15cnt += machines[i as usize] - avg;16max_cnt = max_cnt.max((cnt.abs()).max(machines[i as usize] - avg));17}1819max_cnt20}21}