8分SOS
查看原帖
8分SOS
937468
封禁用户楼主2023/7/13 14:45
#include <bits/stdc++.h>
using namespace std;
long long n,m,ks;
long long a[10010000];
long long rf(long long ks){
	long long l=1,r=n,k;
	 while(l<=r){
	 	k=l+(r-l)/2;
	 	if(a[k]==ks){
	 		r=k-1;
		}
		else if(a[k]>ks){
			r=k-1;
		}
		else{
			l=k+1;
		}
	 }
	 if(a[l]==ks){
	 	return l;
	 }
	 else{
	 	return -1;
	 }
	}
int main(){
cin>>n>>m;
for(long long i=1;i<=n;i++)
	cin>>a[i];
sort(a+1,a+1+n);
long long s=0;
for(long long i=1;i<=n;i++){
	if(rf(a[i]+m)!=-1)s++;
}	
cout<<s;
	return 0;
}
2023/7/13 14:45
加载中...