题目描述 Description
输入n个正整数,查找其中最亲密的那两个数,并按照原数序输出最亲密的那两个数。所谓最亲密数指的是任何一对相邻的两数中,差的绝对值最小的那对数。如有多对差相等,则输出第一次找到的那一对。
输入描述 Input Description
输入包含2行,第一行一个整数n,第二行是n个用空格分隔的正整数。
输出描述 Output Description
输出包含一行两个整数,表示找到的最亲密的那两个整数,要求按照原来顺序先后输出。
样例输入 Sample Input
9
1 3 4 7 2 6 5 12 32
样例输出 Sample Output
3 4
哈哈,一血。
#include<iostream>
#include<cmath>
using namespace std;
int main(void)
{
int str[105];
int n;
while(cin>>n)
{
int i;
for(i=0; i<n; i++)
{
cin>>str[i];
}
int ans;
int pos;
int d=str[1]-str[0];
ans=abs(d);
pos=0;
for(i=1; i<n-1; i++)
{
d=str[i+1]-str[i];
d=abs(d);
if(d<ans)
{
ans=d;
pos=i;
}
}
cout<<str[pos]<<" "<<str[pos+1]<<endl;
}
return 0;
}