1. 程式人生 > >CCF-2017-12月-第1題

CCF-2017-12月-第1題

問題描述  給定n個數,請找出其中相差(差的絕對值)最小的兩個數,輸出它們的差值的絕對值。輸入格式  輸入第一行包含一個整數n
  第二行包含n個正整數,相鄰整數之間使用一個空格分隔。輸出格式  輸出一個整數,表示答案。樣例輸入5
1 5 4 8 20樣例輸出1樣例說明  相差最小的兩個數是5和4,它們之間的差值是1。樣例輸入5
9 3 6 1 3樣例輸出0樣例說明  有兩個相同的數3,它們之間的差值是0.資料規模和約定  對於所有評測用例,2 ≤ n ≤ 1000,每個給定的整數都是不超過10000的正整數。思路:太水了!!!上程式碼
#include<cstdio>
#include<cmath>
int a[1010];
using namespace std;
int main()
{
	int n;
	int minn=100000;
	scanf("%d",&n);
	for(int i=0;i<n;i++)
	{
		scanf("%d",&a[i]);
	}
		for(int i=0;i<n;i++)
	{
		for(int j=i+1;j<n;j++)
		{
			if(abs(a[i]-a[j])<minn)
			minn=abs(a[i]-a[j]);
		}
	}
	printf("%d",minn);
	return 0;
}