本文主要是介绍【C++】浪尖数,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
文章目录
- 题目
- 题目描述
- 输入
- 输出
- 样例输入
- 样例输出
- 思路
- AC代码
题目
题目描述
有一些数很有趣,这些数正好比该数左右相邻的数都大,就像大海里的浪花的浪尖一样美丽;名字叫做“浪尖数”,比如: 2 2 2 3 3 3 1 1 1中的 3 3 3,正好比左右两个数都大。
请你计算一下,一个数组中有多少个“浪尖数”。
输入
第一行,是一个整数 n n n代表数组找那个有 n n n个数 ( n ≤ 100 ) (n≤100) (n≤100)
第二行有 n n n个整数,用空格隔开。
输出
输出一个整数,代表满足条件的浪尖数的数量。
样例输入
5
1 3 2 4 1
样例输出
2
思路
循环第二个数到第n-1
个数(去掉边界),如果正好比左右两个数都大,浪尖数数量 + 1 +1 +1
AC代码
#include<bits/stdc++.h>
using namespace std;
int main() {int a[105],n,sum=0;cin>>n;for(int i=0; i<n; i++) {cin>>a[i];}for(int i=1; i<n-1; i++) { //去掉边界if(a[i-1]<a[i]&&a[i]>a[i+1]) { //判断如果正好比左右两个数都大sum++; //浪尖数数量+1}}cout<<sum;return 0;
}
这篇关于【C++】浪尖数的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!