竞赛讨论区 > 手动写一下试一下
头像
牛客582442645号
发布于 2020-11-07 21:02
+ 关注

手动写一下试一下

#include<bits/stdc++.h>
using namespace std;
int main()
{
    int A[1000],B[1000],C[1000];
    int n,ant=0,ans=1;
    cin>>n;
    for(int i=1;i<=n;i++)
    {
        cin>>A[i];
    }
    for(int i=1;i<=n;i++)
    {
        if(A[i]>A[i-1])
        {
            ant+=1;
            B[i]=ant;
            if(i!=n)
            ans=max(ans,B[i]+1);
            else
            ans=max(ans,B[i]);
        }
        else
        {
            B[i]=1;
            ant=1;
        }
    }
    ant=0;
        for(int i=n;i>=1;i--)
    {
        if(A[i]<A[i+1])
        {
            ant+=1;
            C[i]=ant;
            if(i!=n)
            ans=max(ans,C[i]+1);

            else
            ans=max(ans,C[i]);
        }
        else
        {
            C[i]=1;

            ant=1;
        }

    }
    for(int i=1;i<=n;i++)
    {
        if(A[i+1]-A[i-1]>1)
        
            ans=max(ans,B[i-1]+C[i+1]+1);
        
        
    }cout<<ans<<endl;
    

    
    
}




自己写几个数试一下就能出来。












































全部评论

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

本文相关内容

等你来战

查看全部

热门推荐