问题标题: 酷町堂:5167 最值之差

0
0
已解决
汪艾辰
汪艾辰
高级光能
高级光能

题目链接: 酷町堂:5167

5167   最值之差

经验值:1200 时间限制:1000毫秒 内存限制:128MB

题目描述 Deion

输入n个数,要使最大值与最小值之差小于等于d,最少应该删除几个数。

输入描述 Input Deion

第一行2个数,n和d表示一共n个数,最值之差最大为d
第二行n个数

输出描述 Output Deion

最少应该删除的数字的数量

样例输入 Sample Input

3 1 2 1 4

样例输出 Sample Output

1

数据范围及提示 Data Size & Hint

n∈[1,100],d∈[0,100],每个数∈[1,100]

 

我的代码;

#include<iostream>

#include<algorithm>

using namespace std;

int n,mn=-1,k;

int a[100005];

int main(){

    cin>>n>>k;

    for(int i=1;i<=n;i++){

        cin>>a[i];

    }

    sort(a+1,a+1+n);

    int l=1,r=n-k;

    while(r<=n){

        if(r-l<=k){

mn=max(mn,r-l);

}

        l++;

        r++;

    }

    cout<<mn;

    return 0;

}


0
已采纳
包思远
包思远
新手启示者
新手启示者

我告诉你了!!

0
陈俊霖
陈俊霖
新手天翼
新手天翼

拿连点器刷我的这位大兄弟,你不觉得你复制布展的代码做最值之差有点**吗?

思路彻底错了

我要回答