0
已解决
周旭东
初级光能
初级光能
4219 高矮个互换经验值:800
题目描述 Description
n个人排成一队,寻找队伍中最高的人和最矮的人(如果有多个最高/最矮的人,选择最左边的),让他们俩交换位置,输出交换之后队伍中人们的身高。
输入描述 Input Description
第一行,一个正整数n
第二行,n个正整数,表示一队n个人的身高
输出描述 Output Description
一行n个正整数,表示交换之后的队伍身高,用空格隔开。
样例输入 Sample Input
6 130 150 130 140 170 160
样例输出 Sample Output
170 150 130 140 130 160
数据范围及提示 Data Size & Hint
n<=100,100<=身高<=200
#include<bits/stdc++.h>
#include<algorithm>
#include<cstdio>
#include<climits>
#include<queue>
using namespace std;
int n,a[105],b[105],x,y,l,r;
int main()
{
int n;
cin>>n;
for(int i=1;i<=n;i++){
cin>>a[i];
b[i]=a[i];
}
sort(a+1,a+n+1);
x=a[1],y=a[n];
while(1){
l=1,r=n;
if(b[l]==b[x]&&b[r]==b[n])
{
swap(b[l],b[r]);
break;
}
else {
l++;
r--;
}
}
for(int i=1;i<=n;i++)
cout<<b[i]<<" ";
return 0;
}
为什么错了,请帮忙找一找,蟹蟹