haruki の覚醒め

题意翻译

``` 输入n,m 和 n个数字 问从n个数字中任意选几个数字**加起来** 请输出**最小**且**大于等于**m的 若没有请输出-1 ``` Translated by @RioBlu @[yjjr](/space/show?uid=5088)

题目描述

[problemUrl]: https://atcoder.jp/contests/code-festival-2014-relay/tasks/code_festival_relay_g haruki さんは朝に弱いことで有名です。haruki さんの家には目覚まし時計が $ n $ 個あり、$ i $ 番目の目覚まし時計の音量は $ a_i $ です。 haruki さんは鳴っている目覚まし時計の音量の合計が $ m $ 以上にならない限り、目を覚ますことはありません。しかしながら、必要以上に目覚まし時計をセットすると、うるさくて近所迷惑になってしまいます。 そこで、合計の音量が $ m $ 以上でかつ最小となるように目覚まし時計を選んだとき、その合計の音量を求めてください。

输入输出格式

输入格式


入力は以下の形式で与えられる。 > $ n $ $ m $ $ a_1 $ $ a_2 $ $ ... $ $ a_n $ - $ 1 $ 行目には、目覚まし時計の数を表す整数 $ n $ ($ 1\ \leq\ n\ \leq\ 50 $) と、目を覚ます最小の音量を表す整数 $ m $ ($ 1\ \leq\ m\ \leq\ 10{,}000 $) が与えられる。 - 続く $ n $ 行には、それぞれの目覚まし時計の音量を表す整数 $ a_i $ ($ 1\ \leq\ a_i\ \leq\ 10{,}000 $) が与えられる。

输出格式


合計の音量が $ m $ 以上でかつ最小となるときの合計の音量を $ 1 $ 行で出力せよ。 また、合計の音量が $ m $ に達しない場合は、`-1` を $ 1 $ 行で出力せよ。 最後は改行し、余計な文字、空行を含まないこと。

输入输出样例

输入样例 #1

3 30
25
10
23

输出样例 #1

33

输入样例 #2

4 101
10
20
30
40

输出样例 #2

-1