魔法学院的最强领袖-蓝桥

题目链接:5.魔法学院的最强领袖 - 蓝桥云课 (lanqiao.cn)

解题思路:这题也是一眼出思路的那种,我的思路可能比较麻烦,先找到最大值的索引,然后再遍历数组,找与最大值相等的数,判断最大值个数,只有一个就输出索引,有多个就输出数量

下面是c++代码:

#include 
#include
using namespace std;
int main()
{
    // 请在此输入您的代码
    int n, arr[1001], count = 1, max = 0, index = 0;
    cin >> n;
    for (int i = 0; i < n; i++) {
        cin >> arr[i];
    }
    //找最大值
    for (int i = 0; i < n; i++) {
        if (arr[i] > max) {
            max = arr[i];
            index = i + 1;
        }
    }
    sort(arr, arr + n);
    for (int i = n - 2; i >= 0; i--) {
        if (arr[i] != max) {
            break;
        }
        count++;
    }
    if (count == 1) {
        cout << index;
    }
    else {
        cout << count;
    }
    return 0;
}

你可能感兴趣的:(算法,c++,数据结构)