5 条题解

  • 0
    @ 2025-7-7 18:18:44
    using namespace std; // 使用标准命名空间,这样写代码时不用总加std::
    int main() {
        int n; // 创建一个叫n的盒子,用来存储数字的个数(比如有5个数字)
        cin >> n; // 从键盘读取数字的个数,放进n盒子
        
        // 创建一个能装1000个数字的大盒子(因为题目说n≤1000)
        int numbers[1000]; // 名字叫numbers,就像一排编号的储物柜
        
        // 用魔法小帮手(循环)往储物柜放数字:
        for (int i = 0; i < n; i++) { // i从0数到n-1(共n次)
            cin >> numbers[i]; // 把输入的数字放进第i号储物柜
        }
        
        // 设置侦探小助手寻找最大值位置:
        int max_value = numbers[0]; // 假设第0号柜子的数字是最大的(就像选第一个小朋友当临时队长)
        int max_position = 1; // 记录最大值的第一个位置(注意:位置从1开始计数)
        
        // 派侦探小助手逐个检查储物柜:
        for (int i = 1; i < n; i++) { // 从第1号柜子开始检查(第0号已经看过了)
            // 如果发现更大的数字(就像发现更高的队员)
            if (numbers[i] > max_value) {
                max_value = numbers[i]; // 更新最大值(换新队长)
                max_position = i + 1;  // 记录位置(注意:柜子编号+1=位置)
            }
            // 注意:如果遇到相等的最大值,我们不更新位置(因为只要第一个)
            // 就像老师只记住第一个举手的同学
        }
        
        // 输出最大值的第一个位置:
        cout << max_position << endl; // 告诉用户结果
        
        return 0; // 程序结束,有礼貌地退出
    }
    

    信息

    ID
    238
    时间
    1000ms
    内存
    64MiB
    难度
    9
    标签
    递交数
    10
    已通过
    8
    上传者