

#include <iostream>
using namespace std;
int main()
{
int n;
int count=0;
cin >> n;
int a[n];
for(int i=0;i<n;i++)
{
cin >> a[i];
}
for(int j=0;j<n-2;j++)
{
if((a[j+1]-a[j]>0&&a[j+2]-a[j+1]<0)||(a[j+1]-a[j]<0&&a[j+2]-a[j+1]>0))
{
count++;
}
}
cout << count << endl;
return 0;
}
二刷
#include <iostream>
using namespace std;
int main()
{
int n;
cin >> n;
int a,b,pre,now,count=0;
cin >> a >> b;
pre=b-a;
for(int i=2;i<n;i++)
{
cin >> a;
now=a-b;
if((pre>0&&now<0)||(pre<0&&now>0))
count++;
b=a;
pre=now;
}
cout << count << endl;
return 0;
}
这篇博客包含两个C++程序,分别通过不同的方法计算数组中元素连续变化的次数。第一个程序使用for循环遍历数组,检查相邻元素之间的增减变化。第二个程序简化了逻辑,同样通过遍历数组并跟踪相邻元素变化来计算计数。这些程序适用于理解数组操作和条件判断在编程中的应用。
167

被折叠的 条评论
为什么被折叠?



