二分8分求助
查看原帖
二分8分求助
980247
wangyiqing_DOCX楼主2023/11/4 17:34
#include<iostream>
#include<algorithm>
using namespace std;
long long a[2000005],n,c,ans=0;
bool find(int key){
	long long l=1,r=n;
	while(l<=r){
		int mid=(l+r)/2;
		if(a[mid]==key) return 1;
		if(a[mid]<key) l=mid+1;
		if(a[mid]>key) r=mid-1;
	}
	return 0;
}
int main(){
	cin>>n>>c;
	for(int i=1;i<=n;i++){
		cin>>a[i];
	}
	sort(a+1,a+n+1);
	for(int i=1;i<=n;i++){
		if(find(a[i]-c)) ans++;
	}
	cout<<ans;
}
2023/11/4 17:34
加载中...