class BlockNumbers
    attr_reader :l, :n, :w

    def initialize(l: 0, n: 0, w: [])
        @l, @n, @w = l, n, w
    end

    def datainput
        begin
            @l = Integer(gets.chomp)
            @n = Integer(gets.chomp)
            @w = gets.chomp.split.map { |v| Integer(v) }
        rescue
            
        end
    end

    def how_many_blocks(box_width, width_blocks)
        width_blocks = width_blocks.sort
        sum, cnt = 0, 0
        width_blocks.each do |width|
            sum += width
            if box_width < sum
                return cnt
            elsif box_width == sum
                cnt += 1
                return cnt
            else
                cnt += 1
            end
        end
        return cnt
    end

    def dataoutput
        puts how_many_blocks(@l, @w)
    end

    def run
        datainput
        dataoutput
    end
end

if $0 == __FILE__
    BlockNumbers.new.run
end