fn main() { let mut n = String::new(); std::io::stdin().read_line(&mut n).ok(); let n: usize = n.trim().parse().unwrap(); let mut lines: Vec = vec![]; for _ in 0..n { let mut st = String::new(); std::io::stdin().read_line(&mut st).ok(); let st: Vec = st.trim().split_whitespace().map(|s| s.parse().unwrap()).collect(); lines.push(st[0] + 4 * st[1]); } let ok: bool = lines.iter().map(|i| i % 2).sum::() % n == 0; if ok { let max_val: usize = *lines.iter().max().unwrap(); println!("{}", lines.iter().map(|i| max_val - i).map(|i| i / 2).sum::()) } else { println!("-1"); } }