1036: 小偷盗宝

内存限制:256 MB 时间限制:2.000 S
评测方式:文本比较 命题人:
提交:46 解决:23

题目描述

一个月黑风高的夜晚,博物馆内闯入了一个小偷,小偷想要偷走全部的艺术品! 具体来说,博物馆中有 $N$ 件排列为一排的艺术品,每种艺术品有一个属性值是体积,我们用 $A_i$ 来表示。 不幸的是,小偷的口袋大小只有 $W$ ,所以小偷**一次**所偷走的所有艺术品的体积之和不能大于 $W$ 。 博物馆的监控有一个奇怪的特性,即小偷必须从 第 $1$ 件艺术品开始偷窃,然后依次是 $2,3,4……$ ,否则监控就会报警。 在不触发警报的前提下,小偷至少需要几次可以偷走全部艺术品? 如果不能全部偷走,输出`-1`

输入

第一行两个正整数 $N$ , $W$ 表示博物馆的艺术品数量,小偷的口袋大小。 接下来输入第 $i$ 个艺术品的体积 $A_i$

输出

输出一行一个整数,在不触发警报的前提下,小偷偷走全部艺术品的最小次数。 如果不能全部偷走,输出`-1`

样例输入 复制

3 6
3 4 2

样例输出 复制

2

提示

### **样例说明** - 第一组数据,最佳选择是第一次拿第一个艺术品,第二次拿第二,三个艺术品 - 无法拿走全部 ### **数据范围** - 对于 $30\%$ 的数据,$ 1\ \le\ N\ \le\ 10^2 $ , $ 1\ \le\ A_i,W\ \le\ 5\ \times\ 10^3 $ - 对于 $100\%$ 的数据,$ 1\ \le\ N\ \le\ 3\ \times 10^5 $,$ 1\ \le\ A_i,W\ \le\ 3\ \times 10^8 $

来源/分类