Cod sursa(job #1709786)
Utilizator | UCV DUMITRU MITROI ENACHE UCV_DUMITRU_ENACHE_MITROI | Data | 28 mai 2016 13:51:49 |
---|---|---|---|
Problema | Pq | Scor | 0 |
Compilator | cpp | Status | done |
Runda | ONIS 2016 - Runda - 2 - ACM ICPC Romanian Programming Contest | Marime | 1.12 kb |
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
ifstream in("pq.in");
ofstream out("pq.out");
int N,Q, L, R;
in>>N>>Q;
int m[N][N];
int v[N+1];
for(int i = 1 ; i<=N; ++i)
{
in>>v[i];
}
for( int i=1; i<=N; ++i )
{
for( int j = i; j<=N; ++j )
{
if( v[i] == v[j] )
{
m[i][j] = 1;
}
else
{
m[i][j] = 0;
}
}
}
while( Q-- != 0 )
{
in>>L>>R;
int cost = 0;
int index = L;
for( int i=L; i<=R; ++i )
{
if( m[L][i] == m[L][index] )
{
if( cost < (i - index) )
{
cost = (i - index);
}
index = i;
}
}
if(cost == 0)
{
out<<-1<<endl;
}
else
{
out<< cost<<endl;
}
}
in.close();
out.close();
return 0;
}