//用lower和upper就行了啊
#include <bits/stdc++.h>
using namespace std;
int main(){
int n,c;
cin>>n>>c;
int a[100100],ans=0;
for(int i=1;i<=n;i++)cin>>a[i];
sort(a+1,a+n+1);
for(int i=1;i<=n;i++){
int b=a[i]-c;
int x=upper_bound(a+1,a+n+1,b)-lower_bound(a+1,a+n+1,b);
ans+=x;
}
cout<<ans;
return 0;
}