use std::cmp::*; use std::io::*; fn main() { let mut s: String = String::new(); std::io::stdin().read_to_string(&mut s).ok(); let mut itr = s.trim().split_whitespace(); let n: usize = itr.next().unwrap().parse().unwrap(); let mut a = vec![Vec::new(); 1010]; for i in 0..n { for j in 0..n { let b = itr.next().unwrap().parse::().unwrap() - 1; a[b].push((i, j)); } } let mut ans = 0; for i in 0..n { let mut tmp = 1 << 30; for pos in 0..n { let mut sum = 0; for &(y, x) in a[i].iter() { let z = (y as isize - pos as isize).abs() as usize; sum += max(z, x); } tmp = min(tmp, sum); } ans += tmp; } println!("{}", ans); }