華為機試——從5個人中選取2個人作為禮儀
阿新 • • 發佈:2019-01-25
從5個人中選取2個人作為禮儀
要從5個人中選取2個作為禮儀,其中每個人的身高範圍為160-190,要求2個人的身高差最小(如果差值相同的話,選取最高的兩個人),以升序輸出兩個人的身高。
Sample input:161 189 167 172 188
Sample output:188 189
#include<iostream>
#include<cmath>
using namespace std;
int main()
{
int a[5],i,j,temp=30,n,m;//temp為最大身高差
for(i=0;i<5;i++)
cin >>a[i];
for(i=0;i<4;i++)
for(j=i+1;j<5;j++)
{
if(abs(a[i]-a[j])<temp)
{
temp=abs(a[i]-a[j]);
if(a[i]>a[j]){n=i;m=j;}
else
{n=j;m=i;}
}
else if(abs(a[i]-a[j])==temp&& a[i]>a[m]&& a[i]>a[n])
{
//a[i]>=a[j] ? n=i,m=j:n=j,m=i;
if(a[i]>=a[j])
{
n=i;m=j;
}
else {n=j;m=i;}
}
}
cout<<a[m]<<" "<<a[n]<<endl;
return 0;
}