代码如下:
#include <iostream>
#include <algorithm>//sort()头文件
using namespace std;
#define N 100001
bool cmp(int x,int y){
return x<y;
}
int main(){
int n;cin>>n; //n个数
int num[N];
for(int i=0;i<n;i++){//输入
cin>>num[i];
}
sort(num,num+n,cmp);//从小到大排序
int min=10000;//记录最小差值,初始值赋值最大 题中:每个给定的整数都是不超过10000的正整数。
for(int i=0;i<n-1;i++){
int a=num[i]-num[i+1];//num[0]-num[1],num[1]-num[2]……num[n-2]-num[n-1]
if(a<0) a=(-1)*a; //若差值为负数,取正
if(a<min) min=a; //此次差值小于最小差值,则更新最小差值
}
cout<<min<<endl;
return 0;
}
题目如下: