Se dă un șir ordonat crescător a1, a2, …, an de numere întregi. Asupra șirului putem efectua trei tipuri de interogări:
1 x– Câte numere din șir sunt mai mici sau egale decâtx?2 x– Câte numere din șir sunt mai strict mai mari decâtx?3 x– De câte ori apare în șir valoareax?
Cerința
Să se răspundă la Q interogări.
Date de intrare
Fișierul de intrare cb1.in conține pe prima linie numărul n, pe a doua linie n numere naturale separate prin câte un spațiu, elementele șirului. Pe a treia linie se află un număr natural Q, iar pe următoarele Q linii se găsesc câte două numere op x, unde op este numărul operației.
Date de ieșire
Fișierul de ieșire cb1.out va conține exact Q linii. Pe fiecare linie i, i=1..Q, se va afla un singur număr natural reprezentând răspunsul la a i-a interogare.
Restricții și precizări
1 ≤ n ≤ 50.0003 ≤ Q ≤ 100.000- numerele din șir sunt în ordine crescătoare și sunt cuprinse între
-1.000.000.000și1.000.000.000.
Exemplu:
cb1.in
10 -2 4 4 4 7 7 7 7 8 11 4 1 5 2 5 3 7 3 9
cb1.out
4 6 4 0
Explicație
Prima interogare, 1 5: câte numere din șir sunt mai mici sau egale decât 5?. Răspunsul este 4
A doua interogare, 2 5: câte numere din șir sunt strict mai mai mari decât 5?. Răspunsul este 6
A treia interogare, 3 7: de câte ori apare în șir valoarea 7?. Răspunsul este: de 4 ori.
A patra interogare, 3 9: de câte ori apare în șir valoarea 9?. Răspunsul este: de 0 ori.