92pts求救QwQ
查看原帖
92pts求救QwQ
1293898
zhouyuxuan2023楼主2024/10/14 20:22
#include<iostream>
#include<algorithm>
#include<set>
#define ll long long
#define read(x) {x=0;char z;while((z=getchar())<48);do x=x*10+(z^48);while((z=getchar())>47);}
using namespace std;
const ll N=1e5*2+1; 
ll n,t,a[N],total;
int main(){
	read(n);
	read(t);
	for(ll i=1;i<=n;i++){
		read(a[i]);
	}
	sort(a+1,a+1+n);
	for(ll i=1;i<=n;i++){
		ll left=1,right=n,sum=a[i]+t;
		while(left<=right){
			ll mid=left+((right-left)>>1);
			if(a[mid]>=sum){
				right=mid-1;
			}else{
				left=mid+1;
			}
		}
		while(a[left++]==sum)total++;
	}
	printf("%lld",total);
	return 0;
}
求大佬优化
2024/10/14 20:22
加载中...