错的点是#2和#4,把#2的样例下载之后发现输出零,但是不知道为什么错
#include <iostream>
#include <algorithm>
#include <cstdio>
#include <cstring>
using namespace std;
long long a[200003];
int main(){
int n;long long c;
scanf("%d%lld",&n,&c);
for(int i=1;i<=n;i++)
scanf("%lld",&a[i]);
sort(a+1,a+n+1);
int l=1,r=1;
long long ans=0;
for(int i=1;i<=n;i++){
while(a[i]-a[r]>=c&&r<i) r++;
while(a[i]-a[l]>c&&l<r) l++;
if(a[i]-a[r]<c) r--;
if(a[i]-a[r]==c&&a[i]-a[l]==c) ans+=r-l+1;
}
printf("%lld",ans);
return 0;
}