#2878. score and rank

score and rank

题目描述

A\red{A}和小B\red{B}都是51nod\red{51nod}的用户。有一天小A\red{A}打开了程序挑战排行榜,发现小B\red{B}只要刷至少一道题并且获得至 少S\red{S(}S\red{S}有可能是负数)分就能超过小A\red{A}了。小A\red{A}为了维护自己的排名,迅速展开了行动。

具体而言,这里假设51nod\red{51nod}上的题目排成了一个序列,每道题的得分有正有负。小B\red{B}一天可以把任意一个 区间内的所有问题解决掉,并获得这区间内所有问题的得分。而小A\red{A}可以删去序列中的若干问题。但是为 了不被人发现,小A\red{A}想知道在这天内为了维护自己的排名最少需要删去多少个问题?

输入格式

第一行一个正整数n\red{n,}表示问题的数目。

第二行一个整数S\red{S,}表示小B\red{B}至少获得S\red{S}分在的得分上就会超过小A\red{A}

第三行n\red{n}个整数vi\red{vi,}表示每道题的分值。

n<=1e6,abs(S)<=1e15,abs(vi)<=1e9\red{n <= 1e6, abs(S) <= 1e15, abs(vi) <= 1e9}

输出格式

一个整数,表示问题的答案

样例

输入样例

9
11
4 5 6 -8 5 6 6 4 3

输出样例

4

提示

样例解释

删掉3\red{3}6\red{6}和一个5\red{5(}2\red{2}5\red{5)}

对于2%\red{2\%}的数据,1<=n<=10\red{1<=n<=10 }

对于16%\red{16\%}的数据,1<=n<=2000\red{1<=n<=2000 }

对于100%\red{100\%}的数据,1<=n<=106,S<=1015,vi<=109\red{1<=n<=10^6,|S|<=10^{15},|vi|<=10^9 }