题目1053:互换最大最小数

时间限制:1 秒

内存限制:32 兆

特殊判题:

提交:7538

解决:3049

题目描述:

输入一个数n,然后输入n个数值各不相同,调换数组中最大和最小的两个数,然后输出。

输入:

测试数据有多组,输入n(1<=n<=20),接着输入n个数。

输出:

对于每组输入,输出交换后的结果。

样例输入:
2
1 3
样例输出:
3 1
 #include <iostream>
#include <algorithm>
#include <vector>
using namespace std; int main(){
int n, temp, i;
vector<int> v;
while(cin >> n){
v.clear();
for(i = ; i < n; i++){
cin >> temp;
v.push_back(temp);
}
int max = v[], min = v[], max_n = , min_n = ;
for(i = ; i < n; i++){
if(v[i] > max){
max = v[i];
max_n = i;
}
if(v[i] < min){
min_n = i;
min = v[i];
}
}
swap(v[min_n], v[max_n]);
cout << v[];
for(i = ; i < n; i++){
cout << " " << v[i];
}
cout << endl;
}
return ;
}
 
05-23 20:15