use std::io::stdin; fn solve_max_pair_matching(n: usize, vs: &Vec<(i64, i64)>) -> i64 { let mut linear_scale: Vec = vs.iter().map(|&x| x.0 + x.1).collect(); let height_scale: Vec = vs .iter() .zip(linear_scale.iter()) .map(|(&(a, _), &l)| (2 * a - l).abs()) .collect(); linear_scale.sort(); let sum_height = height_scale.iter().sum::(); let max_diff_linear = (0..n) .map(|i| linear_scale[2 * n - i - 1] - linear_scale[i]) .sum::(); (sum_height + max_diff_linear) / 2 } fn main() { let mut line = String::new(); stdin().read_line(&mut line).unwrap(); let n = line.trim().parse::().unwrap(); drop(line); let vs = (0..(2 * n)) .map(|_| { let mut line = String::new(); stdin().read_line(&mut line).unwrap(); let v: Vec = line .trim() .split(' ') .map(|x| x.parse::().unwrap()) .collect(); (v[0], v[1]) }) .collect::>(); println!("{}", solve_max_pair_matching(n, &vs)); }