过山车“峰”的个数问题 过山车非常刺激,乐乐同学却因为晕车体质无法和同学们一起玩。为了打发等待的时间,他在纸上大致记录了过山车轨道的图形,并估算了n个关键点的高度。如果一个点高于所有相邻的点,则称这个点为“峰”。乐乐觉得,坐过山车最刺激的时刻就是经过“峰”的时候。请写一个程序,计算过山车“峰”的个数。 输入描述 第一行:一个正整数 n; 第二行:n 个正整数a1,a2,an,ai表示第i个点的高度 输出描述 一个整数,表示“峰”的个数。 样例1 输入 6 7 6 6 3 9 1 输出 2 提示 【样例说明】 共6个点,第 1个点比相邻的第 2 个点高,第5个点比相邻的第 4个点、第6个点高,是“峰”,其余点都不是“峰”。 【数据范围】 1<=n<=100000 对于任意1<=i<=n,保证1<=ai<=1000000
正确答案:参考程序(Python):n=int(input());a=list(map(int,input().split()));print(sum(1 for i in range(1,n-1) if a[i]>a[i-1] and a[i]>a[i+1]))。样例→2。核心:峰值计数。
试卷来源:2025全国青少年信息素养大赛C++算法创意实践挑战赛(初中组_复赛)真题