A92968.「BalticOI 2010」箱子 bins

普及/提高-

官方

通过率:0%

时间限制:1.00s

内存限制:64MB

题目描述

工厂仓库中有大量空箱子,箱子排列在一行里。仓库的经理想把一些箱子放入其他箱子中,以在仓库的左端腾出一些空间。机器人可以拿起箱子、向右移动,并把它放进一个更大的垃圾箱。只允许以这种方式移动垃圾箱。
由于安全方面的规定,任何箱子最多可容纳一个箱子,且这个箱子必须是空的。
经理也希望所有双箱子放在最左端,来方便跟踪他们。
你要编写一个程序来计算最大可能的 KK,使最左边的 KK 个箱子可以按照某种顺序放入紧接着的 KK 个箱子中。

输入格式

第一行包含用空格分隔的两个整数:M(1M10001 \le M \le 1000),表示最大箱子的大小,以及箱子数 NN1N200001 \le N \le 20000)。
第二行包含 NN 个整数 AiA_i1AiM1 \le A_i \le M),用空格分隔,从左至右表示箱子的大小。

输出格式

输出一行一个整数,表示最大的整数 KK,使得机器人可以将最左边的 KK 个箱子放入紧接着的 KK 个箱子中。

输入输出样例

  • 输入#1

    5 10
    2 2 1 4 3 2 5 4 2 3

    输出#1

    4
首页