P2816 宋荣子搭积木

题目描述

saruka 非常喜欢搭积木,他一共有 $n$ 块积木。而且 saruka 的积木很特殊,只能一块块的竖着摞,可以摞很多列。说过 saruka 的是特殊的积木了,这些积木都非常智能,第 $i$ 块积木有一个情绪值 $x_i$ ,当摞在这块积木上的积木总数超过 $x_i$ 时,这块积木就会很不高兴,发誓以后不会再和 saruka 一起玩耍了。saruka 这么爱玩积木,肯定不会让积木不高兴的,但是 saruka 又希望每块积木都被用上,并且摞的积木列数最少。你能来帮帮 saruka 吗?

输入格式

第一行一个整数 $n$,含义如题目描述所示, 第二行有 $n$ 个数 $x_i$,含义如题目描述所示。

输出格式

输出一个数字,代表最小的积木列数。

说明/提示

对于 $100 \%$ 的数据,$1 \le n \le 5000$,$0 \le x_i \le n$。