1 条题解

  • 0
    @ 2025-10-29 15:49:23

    思路分析

    1. 任务拆解:

    • 读取排队人数n
    • 读取n个人的身高
    • 检查是否满足升序排列
    • 检查是否满足降序排列
    • 判断是否至少满足一种排序方式

    2. 关键点分析:

    • 使用两个标志变量:zx(升序标志)和fx(降序标志)
    • 初始假设两种排序都满足(zx=1, fx=1)
    • 遍历比较相邻两人的身高,破坏升序或降序条件时修改对应标志
    • 只要满足升序或降序中的任意一种,就输出"Good"

    3. 步骤规划: 第一步:读取人数n 第二步:循环读取n个人的身高 第三步:初始化升序标志zx=1,降序标志fx=1 第四步:遍历检查相邻两人的身高关系 第五步:如果发现逆序,修改对应标志 第六步:判断是否至少满足一种排序方式

    4. 代码对应:

    • cin>>n:读取人数
    • 第一个for循环:输入身高数据
    • zx=1, fx=1:初始化排序标志
    • 第二个for循环:检查相邻元素关系
    • a[i]>a[i+1]:破坏升序条件,zx置0
    • a[i]<a[i+1]:破坏降序条件,fx置0
    • if(zx==1||fx==1):判断是否满足任一排序条件
    • 1

    信息

    ID
    829
    时间
    1000ms
    内存
    64MiB
    难度
    7
    标签
    (无)
    递交数
    1149
    已通过
    277
    上传者