Cod sursa(job #2060747)

Utilizator edward.codarceaEdward Codarcea edward.codarcea Data 8 noiembrie 2017 18:00:31
Problema Pq Scor 0
Compilator cpp Status done
Runda Arhiva ICPC Marime 0.54 kb
#include <stdio.h>

int main(void){
	int A[100000], ultimul[100000], max, Q, L, R, N,i, j;
	
	freopen("pq.in", "r", stdin);
	freopen("pq.out", "w", stdout);
	
	scanf("%d %d", &N, &Q);
	for(i=0;i<N;i++){
		scanf("%d", &A[i]);
		ultimul[A[i]]=-1;
	}
	for(i=0;i<Q;i++){
		max=-1;
		scanf("%d %d", &L, &R);
		L--;R--;
		for(j=L;j<=R;j++){
			ultimul[A[j]]=-1;
		}
		for(j=L;j<=R;j++){
			if(ultimul[A[j]]!=-1 && j-ultimul[A[j]]>max){
				max=j-ultimul[A[j]];
			}
			ultimul[A[j]]=j;	
		}
		printf("%d\n",max);
	}
	return 0;
}