题解 | 互换最大最小数
互换最大最小数
https://www.nowcoder.com/practice/04c0f21530994fbfa94887f1e3588e6a
#include <iostream>
#include <iterator>
#include <vector>
#include <algorithm>
using namespace std;
int main() {
int n;
while (cin >> n) { // 注意 while 处理多个 case
vector<int> nums(n);
for (int i = 0; i < n; i++) {
cin >> nums[i];
}
auto max_it = max_element(nums.begin(), nums.end());
int max_index = distance(nums.begin(), max_it);
auto min_it = min_element(nums.begin(), nums.end());
int min_index = distance(nums.begin(), min_it);
int t = nums[max_index];
nums[max_index] = nums[min_index];
nums[min_index] = t;
for (int i: nums) {
cout << i << " ";
}
}
}
// 64 位输出请用 printf("%lld")