解法:
只需要看身高最高的乌鸡个数是否>=2.若满足则除去当前这只乌鸡的最高身高都是最高身高。
若不满足则只需要看最高的和第二高的乌鸡。
#include<iostream>
#include<vector>
#include<algorithm>
#include<cmath>
using namespace std;
#define endl '\n'
int main()
{ios::sync_with_stdio(false);cin.tie(0); cout.tie(0);int n; cin >> n;if (n >= 2) {vector<int> vec1(n, 0);for (int i = 0; i < n; i++) cin >> vec1[i];vector<int> vec(vec1);sort(vec.begin(), vec.end(), greater<int>());if (vec[0] == vec[1]) {for (int i = 0; i < n; i++) {cout << vec[0] << " ";}}else {for (int i = 0; i < n; i++) {if (vec1[i] == vec[0]) {cout << vec[1] << " ";}else {cout << vec[0] << " ";}}}}return 0;
}