Cows in a Row

题目描述

FJ的N头奶牛站成了一行,每头奶牛都有一个生产值,FJ认为如果将生产值相同的奶牛放在一起更令人注目。

为了使连续相同的奶牛数更多,FJ决定移走一些奶牛,但他只能移走生产值相同的奶牛,请问如何移才能得到最大的生产值连续相同的奶牛。

请求出FJ能得到的最大连续相同生产值的奶牛数。

输入输出格式

输入格式:

第一行,一个整数N(1≤N≤1000);

接下来N行,每行一个整数,表示奶牛的生产值。(生产值的范围是[0,1000000])。

输出格式:

一个整数,表示最大连续相同生产值的奶牛数。

输入输出样例

输入样例:
9
2
7
3
7
7
3
7
5
7
输出样例:
4

样例说明: 把生产值为3的奶牛移走,剩下2 7 7 7 7 5 7,连续的相同生产值的奶牛最大为4。

#include<bits/stdc++.h>
using namespace std; 
int a,b,x;
int u[10000000],k[10000000],box,maxx,l,r ;
int main()
{    
    cin>>a;
    for(int i=1;i<=a;i++) cin>>u[i];
    
    for(int i=1;i<=a;i++)
    {
        for(int j=1;j<=a;j++)
        {
            if(u[i]==u[j]) continue;
            else box++,k[box]=u[j];
        }
        for(l=1,r=2;r<=box;r++) 
        {
            if(k[r]!=k[r-1]) 
            {
                maxx=max(r-l,maxx),l=r;
            }            
        }
        maxx=max(r-l,maxx);
        box=0;
    }
    cout<<maxx;


    
    
 
    return 0;
}    

猜你喜欢

转载自www.cnblogs.com/liaoshuangqi/p/10614159.html
Row