你是餐馆的经理。你准备了 $N$ 个便当,并希望将它们分发给一些学校。假设有 $m$ 所学校,且第 $i$ 所学校需要 $k_i$ 个便当。
你的目标是将便当分发给尽可能多的学校。此外,你有一个规则:对于第 $i$ 所学校,你要么给它 $0$ 个便当,要么给它 $k_i$ 个便当。你能写一个程序来帮助你找到最多可以收到便当的学校数量吗?
输入格式
第一行包含两个整数 $N$ 和 $m$。
接下来的 $m$ 行,第 $i$ 行包含一个整数 $k_i$。
输出格式
输出一行,包含一个整数,表示最多可以收到便当的学校数量。
样例
输入样例 1
10 4 3 9 4 2
输出样例 1
3
说明
在这个样例中,答案是 $3$,因为 $3 + 4 + 2 \le 10$ 且 $3 + 9 + 4 + 2 > 10$。
子任务
| 子任务 | 分值 | 限制 |
|---|---|---|
| 1 | 20 | 每个测试点满足 $m = 1$,$0 < N \le 60\,000$ 且 $0 < k_i \le 30\,000$ |
| 2 | 30 | 每个测试点满足 $0 < m \le 1\,000$,$0 < N \le 60\,000$ 且 $0 < k_i \le 1\,000$ |
| 3 | 50 | 每个测试点满足 $0 < N, m \le 60\,000$ 且 $0 < k_i \le 30\,000$ |