fn main() { let l: u32 = read(); let n: u32 = read(); let mut w: Vec = read_vec(); w.sort(); let mut count = 0; let mut sum = 0; for e in w { sum += e; if l < sum { break; } count += 1; } println!("{}", count); } fn read() -> T { let mut s = String::new(); std::io::stdin().read_line(&mut s).ok(); s.trim().parse().ok().unwrap() } fn read_vec() -> Vec { read::().split_whitespace() .map(|e| e.parse().ok().unwrap()).collect() }