1 条题解

  • 0
    @ 2025-10-29 16:19:22

    思路分析

    1. 任务拆解:

    • 读取整数个数n
    • 读取n个整数
    • 统计所有"浪尖数"的数量
    • 输出浪尖数的总数

    2. 关键点分析:

    • 浪尖数定义:比左右相邻的数都大
    • 第一个和最后一个数不可能是浪尖数(没有左邻或右邻)
    • 循环范围从第2个到倒数第2个元素
    • 需要同时满足大于左边和大于右边的条件

    3. 步骤规划: 第一步:读取整数个数n 第二步:循环读取n个整数 第三步:遍历第2个到倒数第2个元素 第四步:检查每个元素是否同时大于左右相邻元素 第五步:满足条件则计数器加1 第六步:输出浪尖数的总数

    4. 代码对应:

    • cin>>n:读取整数个数
    • 第一个for循环:输入整数数组
    • 第二个for循环:遍历中间元素(i从2到n-1)
    • a[i]>a[i-1]&&a[i]>a[i+1]:判断是否为浪尖数
    • ans++:浪尖数计数器加1
    • cout<<ans:输出浪尖数的总数
    • 1

    信息

    ID
    407
    时间
    1000ms
    内存
    16MiB
    难度
    4
    标签
    (无)
    递交数
    516
    已通过
    251
    上传者