use std::{ process::exit, collections::{ HashSet, HashMap, }, }; use proconio::{ input, marker::Chars, }; // use itertools::*; fn yes_no(cdt: bool) { println!("{}", if cdt { "Yes" } else { "No" }) } fn main() { input! { n: usize, c: [isize; n], } if n == 1 { println!("{}", c[0].abs()*2); } let (mut l, mut r): (isize, isize) = (c[0], c[1]); for i in 0..n { if c[i] < l { l = c[i]; } else if r < c[i] { r = c[i]; } } println!("{}", if r <= 0 { 2*l.abs() } else if 0 <= l { 2*r.abs() } else { 2*(l.abs() + r.abs()) }); }