Cerința
Se dă o listă de N
numere naturale, indexată de la 1
la N
, și Q
query-uri de forma op
poz
, unde op
= 1
, 2
este tipul operației.
Cele 2 operații sunt:
op
=1
: se șterge din listă elementul aflat pe pozițiapoz
op
=2
: se afișează elementul din listă aflat pe pozițiapoz
Date de intrare
Fișierul de intrare bigdata.in
conține pe prima linie numerele N
și Q
separate printr-un spațiu, pe următoarele Q
linii câte 2 numere separate printr-un spațiu, reprezentând query-urile op
poz
, iar pe ultima linie N
numere separate prin spații, reprezentând valorile elementelor din listă.
Cele N numere sunt scrise sub forma \(\overline{a_1a_2a_3…a_9}\), deci pot conține 0-uri înaintea primei cifre nenule.
Date de ieșire
Fișierul de ieșire bigdata.out
va conține răspunsurile la query-urile de tip 2
, fiecare pe câte o linie, sub forma \(\overline{a_1a_2a_3…a_9}\).
Restricții și precizări
- \(1 ≤ N ≤ 4 × {10}^{6}\)
- \(1 ≤ Q ≤ min(N, 100.000)\)
- numerele din listă au cel mult \(9\) cifre
Exemplu:
bigdata.in
6 5 2 5 1 3 2 3 1 1 2 4 000000002 000000001 000000003 000000007 000000005 000000006
bigdata.out
000000005 000000007 000000006
Explicație
Lista inițială este (2, 1, 3, 7, 5, 6)
Operațiile sunt, în ordine:
2
5
: se afișează elementul de pe poziția5
:5
1
3
: se șterge elementul de pe poziția3
, lista devine (2, 1, 7, 5, 6)2
3
: se afișează elementul de pe poziția3
:7
1
1
: se șterge elementul de pe poziția1
, lista devine (1, 7, 5, 6)2
4
: se afișează elementul de pe poziția4
:6