Description
给定一个包含n个正整数的序列,你需要判断这个序列中的最大值是否唯一,如果是,输出次大值,否则输出最大值的出现次数。
Format
Input
第一行一个整数n(1 <= n <= 10000); 第二行输入n个正整数,代表这个序列。
Output
如果这个序列中的最大值唯一,输出次大值,否则输出最大值的出现次数。
源码:
#include <bits/stdc++.h>
using namespace std;
int main() {
int n, s, m = 0;
cin >> n;
vector <int> arr(n);
for (int i = 0; i < n; ++i) {
cin >> s;
arr[i] = s;
}
sort(arr.begin(), arr.end());
if (arr[n - 1] != arr[n - 2])
cout << arr[n - 2];
else {
for (int i = 0; i < n; ++i)
if (arr[i] == arr[n - 1])
m++;
cout << m;
}
return 0;
}