#A2056. 缆车

缆车

题目描述

核晶学院组织爬山,共有nn名学生参与。

同学们爬到山顶后,疲倦的他们再也不想徒步走下山了。

于是他们决定坐缆车下山,缆车的最大承重为ww,第i位学生的重量为aiai

当然,每量缆车上学生的重量之和不能大于ww

每租用一辆缆车,同学们将要支付1元钱。

请你设计一个程序,算出他们最少需要支付多少钱才能全员乘坐缆车下山。

输入格式

输入包括两行。 第一行包含两个整数nnww,代表共有n名学生和缆车的承重ww

接下来的一行包含nn个数,第ii个数为aiai,代表第ii名学生的重量。

输出格式

输出包含一个整数,为同学们最终要支付的钱。

5 1996
1 2 1994 12 29 2
2
5 100
30 40 50 45 70
3

提示

对于 100%100\% 的数据,1n101 \leq n\leq 101aiw100001 \leq a_i \leq w \leq 10000