样例都不过QwQ
  • 板块P1102 A-B 数对
  • 楼主lty2023
  • 当前回复0
  • 已保存回复0
  • 发布时间2024/9/4 20:59
  • 上次更新2024/9/5 09:38:53
查看原帖
样例都不过QwQ
1037200
lty2023楼主2024/9/4 20:59
#include<bits/stdc++.h>
using namespace std;
long long a[1000001],n,m;
int find1(int l,int r,int b){
	int c=(l+r)/2;
	if(r-l<2){
		if(a[l]==b){
			return l;
		}
	}
	if(a[c]<=b){
		return find1(c,r,b);
	}
	else{
		return find1(l,c,b);
	}
}
int find2(int l,int r,int b){
	int c=(l+r)/2;
	if(r-l<2){
		if(a[l]==b){
			return l;
		}
	}
	if(a[c]<b){
		return find2(c,r,b);
	}
	else{
		return find2(l,c,b);
	}
}
int main(){
	cin>>n>>m;
	long long sum=0;
	for(int i=0;i<n;i++){
		cin>>a[i];
	}
	sort(a,a+n);
	for(int i=0;i<n;i++){
		sum+=find1(0,n-1,a[i]+m)-find2(0,n-1,a[i]+m);
	}
	cout<<sum;
}
2024/9/4 20:59
加载中...