use std::io; use std::io::prelude::*; use std::io::BufReader; fn run(args: &Vec) -> Vec { let l: u32 = args[0].parse().unwrap(); //let n: u32 = args[0].parse().unwrap(); let mut ws: Vec = args[2].split(' ').map(|s| s.parse().unwrap()).collect(); ws.sort(); let mut s = 0; let mut c = 0; for w in ws { s += w; if s > l { break; } c += 1 } vec![c.to_string()] } fn main() { let args = lines(BufReader::new(io::stdin())); for line in run(&args) { println!("{}", line); } } fn lines(reader: BufReader) -> Vec { reader.lines().map(|l| l.unwrap()).collect() }