use proconio::input; fn main() { input! { n: usize, a: [i64; n], } if n <= 1 { println!("{}", -a[0]); return; } let mut odd = (-a[0]).max(-a[1]); let mut even = -a[0] + a[1]; for &ai in a[2..].iter() { let odd_next = odd.max(even - ai).max(-ai); let even_next = even.max(odd + ai); odd = odd_next; even = even_next; } println!("{}", odd.max(even)); }