1 条题解
-
0
思路分析
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置0a[i]<a[i+1]:破坏降序条件,fx置0if(zx==1||fx==1):判断是否满足任一排序条件
- 1
信息
- ID
- 829
- 时间
- 1000ms
- 内存
- 64MiB
- 难度
- 7
- 标签
- (无)
- 递交数
- 1149
- 已通过
- 277
- 上传者