1766:小猫爬山

文件提交:无需freopen 内存限制:128 MB 时间限制:1.000 S
评测方式:普通裁判 命题人:
提交:13 解决:8

题目描述

蒜头君和花椰妹饲养了 $n$ 只小猫,有一天,蒜头君和花椰妹带着小猫们一起去爬山。经历了千辛万苦,小猫们终于爬上了山顶,但是疲倦的它们再也不想徙步走下山了。

蒜头君和花椰妹只好花钱让它们从索道下山。索道上的缆车最大承重量为 $W$,而 $n$ 只小猫的重量分别是 $C_1,C_2,C_3...C_n$。当然,每辆缆车上的小猫的重量之和不能超过 $W$。每租用一辆缆车,蒜头君和花椰妹就要付 $1$ 美元,所以他们想知道,最少需要付多少美元才能把这 $n$ 只小猫都运送下山?

输入

第一行包含两个以空格分隔的整数, $n$ 和 $W$

接下来 $n$ 行,每行一个整数,其中第 $i+1$ 行的整数表示 第 $i$ 只小猫的重量 $C_i$

$1\le n\le 18, 1\le C_i\le W\le 10^8$

输出

输出一个整数,表示最少需要花多少钱才能将所有小猫运送下山。

样例输入-1 复制

4 12
3 5 6 9

样例输出-1 复制

2