Problem4643--卡牌游戏 II

4643: 卡牌游戏 II

[Creator : ]
Time Limit : 1.000 sec  Memory Limit : 256 MiB

Description

老周在玩一种卡牌游戏,他有 $n$ 张卡牌,每张卡牌上写着一个正整数 $a_i$,表示该卡牌对敌人的伤害值,即打出这张卡牌会使敌人的血量减少 $a_i$。已知敌人的血量为 $b$,当敌人的血量小于等于 $0$ 时,老周就取得了胜利。
老周需要按照顺序依次使用每张牌,对敌人造成伤害。
他想知道他使用了多少卡牌之后就可以取得胜利了。如果用光所有卡牌,依然不能取得胜利,需要输出 $-1$。

Input

第一行,两个空格隔开的正整数 $n, b\ (1 \leq n \leq 10 ^ 5,\ 1 \leq b \leq 10 ^ {18})$,分别为卡牌的数目和敌人的血量;
第二行,$n$ 个空格隔开的整数 $a_i\ (1 \leq a_i \leq 10 ^ 9)$,为每张卡牌的伤害值;
老周会按照读入的卡牌的顺序出牌。

Output

输出一行,包含一个整数,表示蒜头君需要使用的卡牌数目。如果用光所有卡牌,依然不能击退敌人,输出 $-1$。

Sample 1 Input

3 5
2 3 4

Sample 1 Output

2

Source/Category