let () = let l, n = Scanf.scanf "%d %d " (fun l n -> l, n) in let w = Array.init n (fun _ -> Scanf.scanf "%d " (fun i -> i)) in Array.fast_sort (-) w; for i = 1 to n - 1 do w.(i) <- w.(i) + w.(i-1) done; let rec doit i = if i = n || w.(i) > l then i else doit (i + 1) in doit 0 |> Printf.printf "%d\n"