当前位置:首页 > 编程笔记 > 正文
已解决

6277: 【区赛】【鄞州2022】最小差值

来自网友在路上 179879提问 提问时间:2023-10-24 12:32:11阅读次数: 79

最佳答案 问答题库798位专家为你答疑解惑

题目描述

有长度为n的数组序列a,想对数组中的每个数字只进行一次修改,他可以将数字ai修改为 ai + (0~ k)或ai - (0~ k) ,其中 1≤i≤n,k为正整数。请问调整后数组元素的最大值减去最小值的最小差值是多少?

输入

第一行输入两个正整数 n,k。n表示元素的个数,k表示在原先的基础上,可以调整的值的范围,具体意义详见题目描述。

第二行输入 n 个数,表示序列 a;

输出

输出一个数字表示答案。

样例输入

<span style="color:#333333"><span style="background-color:#f5f5f5">5 3
1 5 3 2 4</span></span>

样例输出

<span style="color:#333333"><span style="background-color:#f5f5f5">0</span></span>

提示

数据范围

对于 10% 的数据,有 n=2,1≤ai≤10,1≤k≤10。

对于另外25% 的数据,有2≤n≤103,1≤ai≤10,1≤k≤10。

对于另外25% 的数据,有2≤n≤105,0≤ai≤109,1≤k≤109。

对于另外40% 的数据,有2≤n≤105,0≤ai≤1018,1≤k≤1018。

来源

C++:

#include<bits/stdc++.h>
using namespace std;
int zt(int a){if(a<=0)return 0;else return a;
}
int main(){int a,b,c[100005],maxn=INT_MIN,minn=INT_MAX;cin>>a>>b;for(int i=1;i<=a;i++){cin>>c[i];maxn=max(maxn,c[i]);minn=min(minn,c[i]);}cout<<zt(maxn-minn-b-b);
}

查看全文

99%的人还看了

猜你感兴趣

版权申明

本文"6277: 【区赛】【鄞州2022】最小差值":http://eshow365.cn/6-23319-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!