fn read() -> T { let mut s = String::new(); std::io::stdin().read_line(&mut s).ok(); s.trim().parse().ok().unwrap() } fn read_one() -> Option { let mut s = String::new(); std::io::stdin().read_line(&mut s).ok(); s.trim().parse().ok() } fn main() { let count: u64 = read(); let mut numbers: Vec = vec![]; for _i in 0..count { let input: Option = read_one(); if input.is_none() { println!("\"assert\""); std::process::exit(0); } numbers.push(input.unwrap()); } let mut new_numbers = vec![]; for i in 0..numbers.len() { for j in 0..numbers.len() { if i == j { continue; } let n = numbers[i] + numbers[j]; if !new_numbers.contains(&n) { new_numbers.push(n); } } } new_numbers.sort_by(|a, b| b.partial_cmp(a).unwrap()); println!("{}", new_numbers[1]); }