Pozne

Time limit: 0.1s Memory limit: 64MB Input: pozne.in Output: pozne.out


Alex este un elev foarte poznaș. Dorind să îi ofere o ocupație utilă, diriginta i-a dat un șir foarte lung de numere și o serie de întrebări. După ce și-a învățat lecția, Alex vă roagă să scrieți un program care să răspundă la întrebări cât mai eficient pentru a-l scuti de muncă și a demonstra tuturor că a devenit un băiat cuminte.

Cerință

Vi se dau C,N,QC,N,Q, un șir de NN numere naturale și apoi QQ interogări de forma st,drst, dr.
Dacă C=1C=1, atunci să se afișeze numărul de numere distincte din intervalul închis de indici [st,dr][st, dr].
Dacă C=2C=2, atunci să se afișeze elementul cu frecvență maximă în [st,dr][st, dr] (care apare de cele mai multe ori în intervalul [st,dr][st, dr]) și frecvența acestuia în interiorul intervalului. În cazul în care sunt mai multe elemente cu frecvență maximă se va afișa cel cu valoare minimă (cel mai mic dintre ele).

Date de intrare

Fișierul de intrare pozne.in conține:

  • pe prima linie trei numere naturale nenule, C,NC,N și QQ, cu semnificația din enunț;
  • pe următoarea linie NN numere naturale nenule, reprezentând elementele șirului;
  • pe următoarele QQ linii, câte două numere naturale nenule, stst și drdr.

Date de ieșire

Se va afișa în fișierul de ieșire pozne.out răspunsul cerinței cerute.

Restricții și precizări

  • 1stdrN1\leq st\leq dr\leq N
    # Punctaj Restricții
    1 25 C=1,1N103,1Q104,1A[i]103,1iNC=1, 1\leq N\leq 10^3, 1\leq Q\leq 10^4, 1\leq A[i] \leq 10^3, 1 \leq i \leq N
    2 25 C=2,1N103,1Q104,1A[i]103,1iNC=2, 1\leq N\leq 10^3, 1\leq Q\leq 10^4, 1\leq A[i] \leq 10^3, 1 \leq i \leq N
    3 25 C=1,1N103,1Q104,1A[i]106,1iNC=1, 1\leq N\leq 10^3, 1\leq Q\leq 10^4, 1\leq A[i] \leq 10^6, 1 \leq i \leq N
    4 25 C=2,1N103,1Q104,1A[i]106,1iNC=2, 1\leq N\leq 10^3, 1\leq Q\leq 10^4, 1\leq A[i] \leq 10^6, 1 \leq i \leq N

Exemplul 1

pozne.in

1 7 4
1 2 2 3 3 3 2
1 3
2 5
4 7
1 7

pozne.out

2
2
2
3

Explicație

Pentru prima interogare, intervalul [1,3]=(1,2,2)[1,3]=(1,2,2) are 2 numere distincte, 1 și 2.

Exemplul 2

pozne.in

2 8 4
4 4 2 2 2 3 4 3
1 4
3 6
1 8
5 8	

pozne.out

2 2
2 3
2 3
3 2

Explicație

Pentru prima interogare, [1,4]=(4,4,2,2)[1,4]=(4,4,2,2) 4 apare de 2 ori, 2 apare de 2 ori. Cum 4 și 2 au frecveță maximă, se afișează cel cu valoare mai mică.

Log in or sign up to be able to send submissions!