0分 求教
#include<bits/stdc++.h>
using namespace std;
int n,k,a[100005],shu,s1,s2,l,r,ans,to,mid,i,j;
int main()
{
cin>>n>>k;
for(i=1;i<=n;i++)
cin>>a[i];
for(i=1;i<=n;i++)
{
l=i+1;
r=n;
shu=a[i]+k;
while(l<=r)
{
mid=(l+r)/2;
if(a[mid]<shu)l=mid+1;
else r=mid-1;
}
s1=l;
l=i+1;
r=n;
while(l<=r)
{
mid=(l+r)/2;
if(a[mid]<=shu)l=mid+1;
else r=mid-1;
}
s2=l;
ans+=s2-s1;
}
cout<<ans;
return 0;
}