用sort函数,再遍历一遍,后面的数-前面的数,保留最小差值,一次AC~
代码:
#include <stdio.h>
#include <algorithm>
using namespace std;
int main(){
int n;
int num[1000];
scanf("%d",&n);
for(int i = 0;i <n;i++){
scanf("%d",&num[i]);
}
sort(num,num+n);
int min = 10010;
for(int i = 1;i <n;i++){
if(num[i] - num[i-1] <min){
min = num[i] - num[i-1];
}
}
printf("%d",min);
}