今天早饭没太吃饱,只吃了一个小笼包,和一小碗粥。
饿着发题解。
呃呃,进入正题
实在抱歉,今天太忙,下次发彩蛋。。
这题没必要想我做的这么难
只是想让大家理解的更清楚而已。。
分析思路!
这个程序解决了身高交换问题,主要思路如下:
读取输入的身高数组
找到数组中的最大值及其索引(如果有多个最大值,选择最左边的)
如果最大值不在最左边(索引 0),则将其与最左边的元素交换
输出交换后的数组
程序通过一次遍历找到最大值的索引,然后进行交换操作,时间复杂度为 O (n),满足题目要求。
就这么简单。
上代码!
#include <iostream>
#include <vector>
using namespace std;
int main() {
int n;
cin >> n;
vector<int> heights(n);
for (int i = 0; i < n; i++) {
cin >> heights[i];
}
}
拜拜喽,下期保证发彩蛋!