2,3TLE,大佬救救
  • 板块P1102 A-B 数对
  • 楼主abbcde
  • 当前回复0
  • 已保存回复0
  • 发布时间2023/2/19 16:18
  • 上次更新2023/10/24 00:20:06
查看原帖
2,3TLE,大佬救救
669184
abbcde楼主2023/2/19 16:18
#include<iostream>
#include<algorithm>
using namespace std;
typedef long long ll;
const int N=1e6;
ll q[N];
int main(){
	int n;
	ll c;
	scanf("%d %d",&n,&c);
	for(int i=0;i<n;i++) scanf("%lld",&q[i]);
	sort(q,q+n);
	int cont=0;
	for(int i=0;i<n;i++){
		ll a=q[i];
		ll b=a-c;
		if(b<q[0]||b>q[n-1])
		continue;
		int l=0,r=n-1;
		while(l<r){
			int mid=l+r>>1;
			if(q[mid]>=b) r=mid;
			else l=mid+1;
		}
		if(q[l]==b)
			while(q[l++]==b) cont++;
		q[i]=a;
	}
	printf("%d\n",cont);
	return 0;
}
2023/2/19 16:18
加载中...