Cod sursa(job #1709281)

Utilizator UPT_RaindropsUPT Igna Sendroiu Pacurariu UPT_Raindrops Data 28 mai 2016 11:37:39
Problema Pq Scor 0
Compilator cpp Status done
Runda ONIS 2016 - Runda - 2 - ACM ICPC Romanian Programming Contest Marime 0.76 kb
#include <iostream>
#include <fstream>
using namespace std;
int a[100001],b[100001],c[100001],n,q,i,j,x,y,mx;
int main()
{
    ifstream fin("pq.in");
    ofstream fout("pq.out");
    fin>>n>>q;
    for(i=1;i<=n;i++)
    {
        fin>>a[i];
        if(b[a[i]]!=0)
            c[b[a[i]]]=i;
        b[a[i]]=i;
      /*  for(j=i-1;j>0;j--)
        {
            if(a[i]==a[j])
            {
            c[j]=i;
            break;
            }
        }*/
    }
    //cout<<sizeof(a);
    for(i=1;i<=q;i++)
    {
        fin>>x>>y;
        mx=-1;
        for(j=x;j<y;j++)
        {
            if((c[j]!=0)&&(c[j]<=y))mx=max(mx,c[j]-j);
            if(mx!=-1)
                if(j>y-mx)break;
        }
        fout<<mx<<'\n';
    }
    fin.close();
    fout.close();
    return 0;
}