竞赛讨论区 > 牛牛的数列一直错一个
头像
默默学习的小白菜
编辑于 2022-06-28 15:35
+ 关注

牛牛的数列一直错一个

为啥例3一直过不了
#include <stdio.h>
#include <stdlib.h>

int main()
{
   int n,i,max=1;
   scanf("%d",&n);
   int a[n];
   int left[100000]; //已i个元素为结尾
   int right[100000];//已i个元素为开头

  if(n>2){
   for(i=0;i<n;i++)
   {
       scanf("%d",&a[i]);
   }
   left[0]=1;
   right[n-1]=1;
   for(i=1;i<n;i++)
   {
       if(a[i]>a[i-1])
       {
          left[i]=left[i-1]+1;
       }
       else
       {
           left[i]=1;
       }
   }
   for(i=n-2;i>=0;i--)
   {
       if(a[i]<a[i+1])
       {
           right[i]=right[i+1]+1;
       }
       else
       {
           right[i]=1;
       }
   }
   
   for(i=1;i<=n-1;i++)
   {

        if(a[i-1]<a[i+1]&&left[i-1]+right[i+1]>max)
       {
           max=left[i-1]+right[i+1];
       }
   }
    if(i=n-1&&left[i-1]+1>max)
       {
           max=left[i-1]+1;
       }
   printf("%d",max+1);
  }
  else
  {
      printf("%d",n);
  }


    return 0;
}


全部评论

(1) 回帖
加载中...
话题 回帖

本文相关内容

等你来战

查看全部

热门推荐