#1691. [01背包(2)] 小明装书包

[01背包(2)] 小明装书包

小明装书包

题目描述

小明准备去上学,他有一个容量为 M 的书包。

现在有 N 本书,每本书都有一个厚度,每本书最多只能放一本。

小明希望:

恰好把书包装满。

并且:

放进去的书尽可能少。

请输出最少需要放几本书。

如果无法恰好装满,输出 -1。

输入格式

第一行两个整数 N M (N,M<=2000)分别表示书的数量,背包的容量。

第二行 w1 w2 w3 ... wN

表示每本书的厚度。

输出格式

输出一个整数。

表示最少需要几本书。

不能装满输出 -1

输入输出样例 #1

输入 #1

5 10
2 3 5 6 8

输出 #1

2

输入 #2

5 10
1 2 3 4 5

输出 #2

3