B - Balloons Editorial /

Time Limit: 2 sec / Memory Limit: 1024 MB

配点 : 200

問題文

競プロ練習会イベントでは、コンテスト中に、問題を解いた参加者たちに風船が配布されます。今回の運営チームの中には未来透視のできる超能力者がいて、合計で M 個の風船が必要であることがわかりました。

現在、N 色の風船が手元にあり、色 i (=1, 2, \ldots, N) の風船が a_i 個あります。この中から合計で M 個の風船を選びます。選んだ風船に登場する色の種類がなるべく少なくなるようにしたいです。色の種類数の最小値を求めるプログラムを作成してください。

制約

  • 1 \le N \le 10^5
  • 1 \le M \le 10^9
  • 1 \le a_i \le 10^9
  • a_1 + a_2 + \dots + a_N \ge M
  • 与えられる入力はすべて整数です。

入力

入力は以下の形式で標準入力から与えられます。

N M
a_1 a_2 \ldots a_N

出力

答えを一行に出力してください。


入力例 1

5 17
4 5 7 9 2

出力例 1

3

例えば色 1 の風船を 4 個、色 3 の風船を 6 個、色 4 の風船を 7 個使えば 3 種類で 17 個の風船を用意することができます。


入力例 2

2 9
3 6

出力例 2

2

ちょうどすべての風船を使うことができます。


入力例 3

10 9
1 2 3 4 5 6 7 8 9 10

出力例 3

1

入力例 4

10 129
12 42 13 25 32 19 14 9 21 12

出力例 4

5