一维数组的褶子

一维数组的褶子,第1张

一维数组褶子

在一个整型的一维数组中,如果在遍历数组的过程中发生递增变递减或递减变递增,我们认为这是一维数组的一个褶子。给定一个整型的一维数组,请你判断有几个褶子。

输入格式:

多实例测试,第一行输入一个整数T(0 输出格式:

对应每个测试实例,在一行中输出一个整数,表示一维数组中褶子的个数。

输入样例:

1
5
1 5 6 2 7

输出样例:

2

使用的方法可以理解为断点判断法
1.记录断点前递增或递减区间长度
2.断点: 即a[i]>a[i-1]变为a[i] 3.每次通过断点,区间长度大于等于二为褶子(判断后重置记录区间长度的变量)

#include
void Zhezi(int a[],int i,int m,int k,int w,int n,int sum);
int main()
{
    int n,m,a[101],i;
    scanf("%d",&n);
    while(n--)
    {
        int flag1=0,flag2=0;
        scanf("%d",&m);
        for(i=0; im)
        {
        //上段递减长度如果大于1,含有褶子
            if(w>1)
                sum++;
            if(i1)
                sum++;
            if(i 
这道题变量真的多啊!,所以就用递归来写了! 

递归还是萌新的我瑟瑟发抖_(:з」∠)_
ac的时候这道题并没写出来,但直接printf样例,骗了3分ԅ(¯ㅂ¯ԅ)

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5650338.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存