洛谷 P1420 最长连号【最长合法子序列/断则归一】

题目描述

输入n个正整数,(1<=n<=10000),要求输出最长的连号的长度。(连号指从小到大连续自然数)

输入输出格式

输入格式:

 

第一行,一个数n;

第二行,n个正整数,之间用空格隔开。

 

输出格式:

 

一个数,最长连号的个数。

 

输入输出样例

输入样例#1: 复制
10
3 5 6 2 3 4 5 6 8 9
           
输出样例#1: 复制
5

 

【代码】:

#include<bits/stdc++.h>
using namespace std;
const int INF = 0x3f3f3f3f;
int a[10005];
int len=0,maxn=0;
int main()
{
    int n;
    cin>>n;
    for(int i=1;i<=n;i++) cin>>a[i];
    for(int i=1;i<n;i++)
    {
        if(a[i+1]==a[i]+1)
            len++;
        else
       {
           if(len>maxn) 
           maxn=len;
           len=1;
       }
    }
    cout<<maxn<<endl;
    return 0;
}

  

posted @ 2017-12-04 02:29  Roni_i  阅读(372)  评论(0编辑  收藏  举报