#P10704. 书架

书架

题目描述

农夫约翰最近为奶牛们的图书馆添置了一个巨大的书架,尽管它是如此之大,但还是几乎瞬间就被各种各样的书塞满了。现在,只有书架的顶上还留有一点空间。

所有 N 头奶牛(1 ≤ N ≤ 20000),每头奶牛有自己的高度 H_i(1 ≤ Hi ≤ 10000),设 N 头奶牛的总高度为 S。书架高度为 B(1 ≤ B ≤ S < 2,000,000,007)。

为了够到比书架顶高的高度,奶牛们需要叠成一座“奶牛塔”,塔的高度等于塔中所有奶牛的身高之和。为了往书架顶上放东西,塔的高度必须不小于书架的高度 B。

奶牛们希望在能够够到书架顶的前提下,让塔里奶牛的数量尽量少。请你计算所需的最小奶牛数目。

输入格式

  • 第 1 行:两个用空格分隔的整数 N 和 B。
  • 第 2 行到第 N+1 行:第 i+1 行包含一个整数 Hi,表示第 i 头奶牛的高度。

约束:
1 ≤ N ≤ 20000,1 ≤ Hi ≤ 10000,1 ≤ B ≤ S < 2,000,000,007(S 为所有 Hi 之和)。

输出格式

输出一个整数:最少需要多少头奶牛叠成塔,才能使塔高 ≥ B。

输入样例 #1

8 46  
20  
21  
18  
10  
25  
12  
26  
22

输出样例 #1

2

题目说明

样例中可以选择高度为 26 和 21 的两头奶牛,合计高度 47 ≥ 46,所以最少需要 2 头奶牛。