不懂就问哪错了
查看原帖
不懂就问哪错了
384010
doubleyu楼主2022/7/20 11:09
#include <bits/stdc++.h>
using namespace std;
unsigned long long n,d,a[10000000],cc;
void digui(int b,int c){
	if(c>n){
		return ;
	}
	if(b<a[c]){
		if(b+d>=a[c]){
		//cout<<b<<" "<<a[c]<<endl;
		cc++;
		digui(b,c+1);
		
		return ;
	}
	else{
		return ;
	} 
	}
	else{
		if(a[c]+d>=b){
			//cout<<b<<" "<<a[c]<<endl;
			cc++;
			digui(b,c+1);
			
		}
	}

}
int main(){
	//freopen("P1296_7.in","r",stdin);
	cin>>n>>d;
	for(int i=1;i<=n;i++){
		cin>>a[i];
	}
	sort(a,a+n);
	//for(int i=0;i<n;i++){
	//	cout<<a[i];
	//}
	for(int i=1;i<=n-1;i++){
		digui(a[i],i+1);
	}
	cout<<cc;
	return 0; 
}
2022/7/20 11:09
加载中...