AT_cpsco2019_s3_b Balloons

题目描述

在竞赛编程练习会活动中,比赛期间会向解出题目的参赛者分发气球。本次运营团队中有一位能够预知未来的超能力者,已经知道总共需要 $M$ 个气球。 现在手头上有 $N$ 种颜色的气球,第 $i$ 种颜色的气球有 $a_i$ 个。请从这些气球中选出总共 $M$ 个气球。希望选出的气球所包含的颜色种类数尽可能少。请编写程序,求出所需颜色种类数的最小值。

输入格式

输入以如下格式从标准输入读入。 > $N$ $M$ $a_1$ $a_2$ $\ldots$ $a_N$

输出格式

请输出一个整数,表示所需颜色种类数的最小值。

说明/提示

## 限制条件 - $1 \leq N \leq 10^5$ - $1 \leq M \leq 10^9$ - $1 \leq a_i \leq 10^9$ - $a_1 + a_2 + \dots + a_N \geq M$ - 所有输入均为整数。 ## 样例解释 1 例如,可以选用 $4$ 个颜色 $1$ 的气球、$6$ 个颜色 $3$ 的气球和 $7$ 个颜色 $4$ 的气球,这样可以用 $3$ 种颜色准备 $17$ 个气球。 ## 样例解释 2 可以正好把所有气球都用上。 由 ChatGPT 4.1 翻译