为什么只A1点,下数据自测对
查看原帖
为什么只A1点,下数据自测对
768325
Herbie_ZHB楼主2024/1/27 08:38
#include<bits/stdc++.h>
using namespace std;
int n,c;
int d[200001],ans;
int main(){ 
    scanf("%d%d",&n,&c);
    for(int i=1;i<=n;i++){
    	scanf("%d",&d[i]);
	}
	sort(d+1,d+1+n);
	for(int i=1;i<=n;i++){
	    int b=d[i];
        int l=i+1,r=n+1,mid;
		while(l<r){
			mid=l+(r-l)/2;
			if(d[mid]>=b+c){
				r=mid;
			}else{
				l=mid+1;
			}
		} 
		if(d[r]==b+c){
			ans++;
		}
	}
	cout<<ans<<endl;
	return 0;
} 
2024/1/27 08:38
加载中...