#include<bits/stdc++.h>
using namespace std;
typedef pair<int,int> p;
main(){
int n,k;
cin>>n>>k;
vector<int>v(n);
for(auto &it:v)cin>>it;
int c=0;
priority_queue<p>maxPq;
priority_queue<p,vector<p>,greater<p>>minPq;
for(int i=0,j=0;j<n;j++){
maxPq.push({v[j],j});
minPq.push({v[j],j});
while(maxPq.top().first-minPq.top().first>k){
i=min(maxPq.top().second,minPq.top().second)+1;
while(maxPq.top().second<i)maxPq.pop();
while(minPq.top().second<i)minPq.pop();
}
c+=j-i+1;
}
cout<<c<<"\n";
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCnR5cGVkZWYgcGFpcjxpbnQsaW50PiBwOwoKbWFpbigpewogICAgaW50IG4sazsKICAgIGNpbj4+bj4+azsKICAgIHZlY3RvcjxpbnQ+dihuKTsKICAgIGZvcihhdXRvICZpdDp2KWNpbj4+aXQ7CiAgICBpbnQgYz0wOwogICAgcHJpb3JpdHlfcXVldWU8cD5tYXhQcTsKICAgIHByaW9yaXR5X3F1ZXVlPHAsdmVjdG9yPHA+LGdyZWF0ZXI8cD4+bWluUHE7CiAgICBmb3IoaW50IGk9MCxqPTA7ajxuO2orKyl7CiAgICAgICAgbWF4UHEucHVzaCh7dltqXSxqfSk7CiAgICAgICAgbWluUHEucHVzaCh7dltqXSxqfSk7CiAgICAgICAgd2hpbGUobWF4UHEudG9wKCkuZmlyc3QtbWluUHEudG9wKCkuZmlyc3Q+ayl7CiAgICAgICAgICAgIGk9bWluKG1heFBxLnRvcCgpLnNlY29uZCxtaW5QcS50b3AoKS5zZWNvbmQpKzE7CiAgICAgICAgICAgIHdoaWxlKG1heFBxLnRvcCgpLnNlY29uZDxpKW1heFBxLnBvcCgpOwogICAgICAgICAgICB3aGlsZShtaW5QcS50b3AoKS5zZWNvbmQ8aSltaW5QcS5wb3AoKTsKICAgICAgICB9CiAgICAgICAgYys9ai1pKzE7CiAgICB9CiAgICBjb3V0PDxjPDwiXG4iOwp9