1 条题解

  • 0
    @ 2024-11-18 13:59:59

    小破贪心

    #include<bits/stdc++.h>
    using namespace std;
    const int N=100005;
    int n,k;
    int a[N];
    int sum=0;
    bool vis[N];
    int main(){
    	scanf("%d",&n);
    	scanf("%d",&k);
    	for(int i=1;i<=n;i++){
    		scanf("%d",&a[i]);
    	}
    	sort(a+1,a+n+1);
    	for(int i=1;i<=n-2;i++){
    		if(vis[i]==false){
    			if(a[i+2]-a[i]<=k){
    				sum++;
    				vis[i]=true;
    				vis[i+1]=true;
    				vis[i+2]=true;
    			}
    		}
    	}
    	cout<<sum;
    	
    	return 0;
    }
    
    • 1

    信息

    ID
    48
    时间
    1000ms
    内存
    64MiB
    难度
    6
    标签
    (无)
    递交数
    66
    已通过
    18
    上传者