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

题目描述

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

输入

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

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

输出

输出一个数字表示答案。

样例输入

5 3
1 5 3 2 4

样例输出

0

提示

数据范围

对于 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
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<

你可能感兴趣的:(C++,C1,算法,c++,Dev-C++)