#include #include #include using namespace std; struct BIT{vectort;explicit BIT(int n):t(n+1){}void add(int x){for(;x<(int)t.size();x+=x&-x)++t[x];}int sum(int x){int s=0;for(;x;x-=x&-x)s+=t[x];return s;}}; int main(){ios::sync_with_stdio(false);cin.tie(nullptr);int n;long long limit;cin>>n>>limit;vectorp(n+1),v;for(int i=1;i<=n;++i){long long x;cin>>x;p[i]=p[i-1]+x;}v=p;sort(v.begin(),v.end());v.erase(unique(v.begin(),v.end()),v.end());BIT bit(v.size());long long ans=0,inserted=0;bit.add(lower_bound(v.begin(),v.end(),p[0])-v.begin()+1);++inserted;for(int i=1;i<=n;++i){int le=upper_bound(v.begin(),v.end(),p[i]-limit)-v.begin();ans+=inserted-bit.sum(le);bit.add(lower_bound(v.begin(),v.end(),p[i])-v.begin()+1);++inserted;}cout<