singlll 发表于 2021-8-5 22:29:23

严格递增数列C语言问题,跑不出来

题目描述:
一个严格递增数列是指每个数都严格比前一个数大的一列数。一个严格递减数列是指每个数都严格比前一个数小的一列数。一个严格单调数列是指严格递增数列或是严格递减数列。例如1, 5, 6, 10 和 9, 8, 7, 1两个数列都是严格单调数列,而 1, 5, 2, 6和 1, 2, 2, 3就不是严格单调数列。给定你一个数列seq,请找到满足严格单调定义的最长连续子数列,并返回其长度
输入:
输入一个整形数组seq。seq含有1到50个元素(其中包括1和50),seq中的每个元素的取值范围都在1和100之间(其中包括1和100
输出:
返回严格单调的最长连续子序列长度
举例:
seq: {1, 7, 7, 8, 3, 6, 7, 2},返回3. 最长的严格单调数列是3,6,7.而子数列1,3,6,7是不符合要求的,因为1和3并不相连,此外1,7,7,8也是满足条件的,因为它不是严格递增的

int longestMonotoneSequence(int seq[], int n){
   int cntUp = 1;
   int maxCntUp = 0;
   int cntDown = 1;
   int maxCntDown = 0;
   int j;
for(j = 0; j<n-1;j++){
   if(seq<seq){
   cntUp++;
    if(cntUp>maxCntUp){
   maxCntUp = cntUp;
    }
   }else{
    cntUp = 1;
   }
   
   if(seq>seq){
   cntDown++;
    if(cntDown>maxCntDown){
   maxCntDown = cntDown;
    }
   }else{
    cntDown = 1;
   }

}
   if(maxCntUp>maxCntDown){
return maxCntUp;
}else{
return maxCntDown;
}
}

大马强 发表于 2021-8-5 22:47:17

打扰了,看不懂,你蹲大佬吧{:10_266:}

singlll 发表于 2021-8-5 22:53:03

大马强 发表于 2021-8-5 22:47
打扰了,看不懂,你蹲大佬吧

要得{:10_254:}{:10_254:}

大马强 发表于 2021-8-5 23:03:00

但是第三个我回答了{:10_281:}

hhhfx 发表于 2021-8-6 09:25:13

我复制跑了一下,没问题啊 0.0
页: [1]
查看完整版本: 严格递增数列C语言问题,跑不出来