201712-1 最小差值
题目
思路
可以开一个bool数组记录有哪些数,也可以把数记下来之后排序。
AC代码如下
#include<cstdio>
#include<algorithm>
using namespace std;
int main(){
int n,t,ans=10000;
scanf("%d",&n);
bool f[10005]={0};
for(int i=0;i<n;i++){
scanf("%d",&t);
if(f[t]){
printf("0");
return 0;
}
else f[t]=true;
}
t=-10000;
for(int i=0;i<10005;i++){
if(f[i]){
ans=min(ans,i-t);
if(ans==1) break;
t=i;
}
}
printf("%d",ans);
return 0;
}