1 条题解

  • 0
    @ 2025-11-16 16:03:17
    #include <iostream>
    #include <algorithm>
    using namespace std;
    
    int main() {
        int n;
        cin >> n;  // 读入同学个数
        
        int a[1000];  // 存储票数的数组
        
        // 读入每个同学的票数
        for (int i = 0; i < n; i++) {
            cin >> a[i];
        }
        
        // 特殊情况:如果只有1个同学
        if (n == 1) {
            cout << "No" << endl;
            return 0;
        }
        
        // 对票数进行排序,从小到大
        sort(a, a + n);
        
        // 找出最大值(最后一个元素)
        int max_value = a[n - 1];
        
        // 从后往前找第一个不等于最大值的数
        int result = -1;
        for (int i = n - 2; i >= 0; i--) {
            if (a[i] != max_value) {
                result = a[i];  // 找到次大的值
                break;
            }
        }
        
        // 输出结果
        if (result == -1) {
            // 如果没找到次大的值,说明所有票数都相同
            cout << "No" << endl;
        } else {
            cout << result << endl;
        }
        
        return 0;
    }

    河南省X组第二轮T1【投票(vote)】

    信息

    ID
    1357
    时间
    1000ms
    内存
    256MiB
    难度
    8
    标签
    (无)
    递交数
    20
    已通过
    5
    上传者