.campion
conectare | înregistrare | căutare
Pagina principală » Probleme » carray

ultima problemă
grupă: mică
sursă: OMI 2016
ultimul articol
autor: Prof. Radu Vişinescu
ultimul software
autor: Prof. Emanuela Cerchez
carray


Timp maxim de execuţie / test:
2s
Memorie totala disponibilă / stivă:
64MB / 2MB

Un vector este o secvenţă de numere naturale. Iniţial se dau N vectori, numerotaţi de la 1 la N, fiecare dintre ei conţinând câte un singur număr natural. Apoi se definesc alţi M vectori (numerotaţi de la N+1 la N+M). Vectorul i (N+1≤i≤N+M) se obţine prin concatenarea vectorilor cu numerele A(i) şi B(i). Prin concatenare înţelegem adăugarea elementelor lui B(i), în ordine, după ultimul element din A(i). În urma concatenării vectorii A(i) şi B(i) nu se modifică (practic, doar se creează un vector nou fără modificarea vectorilor existenţi).

Cerinţă

Considerând cei N+M vectori definiţi anterior, trebuie să răspundeţi la Q întrebări de tipul (i,p), având semnificaţia: Care este numărul de pe poziţia p din vectorul cu numărul i ? Numerele dintr-un vector sunt numerotate de la 1 la numărul de elemente din cadrul vectorului.

Date de intrare

Prima linie a fişierului de intrare carray.in conţine trei numere naturale: N, M şi Q. Următoarele N linii conţin fiecare câte un număr natural. Numărul de pe a i-a dintre aceste linii reprezintă numărul conţinut în vectorul i. Următoarele M linii conţin fiecare câte două numerele naturale. A i-a dintre aceste M linii conţine valorile A(N+i) şi B(N+i) (pe baza cărora se construieşte vectorul N+i). Următoarele Q linii conţin fiecare câte două numere naturale i şi p, reprezentând o întrebare (i,p).

Date de ieşire

În fişierul de ieşire carray.out veţi afişa, în ordine, pentru fiecare întrebare (i,p) din fişierul de intrare, numărul care se află pe poziţia p din vectorul i.

Restricţii

1 ≤ N ≤ 20 000
0 ≤ M ≤ 500 000
1 ≤ Q ≤ 20 000
1 ≤ A(i) < i şi 1 ≤ B(i) < i (pentru N+1 ≤ i ≤ N + M)
• În teste, numărul de elemente ale fiecărui vector va fi cel mult egal cu 1016.
• Argumentul i al unei întrebări (i, p) este cuprins între 1 şi N+M.
• Argumentul p al unei întrebări (i, p) este cuprins între 1 şi numărul de elemente din vectorul i.
• Numărul natural conţinut de fiecare dintre vectorii 1, ..., N este între 0 şi 100 000 000.

Exemple

carray.incarray.outExplicaţii
3 4 5 3 6 9 1 2 4 2 5 5 6 3 1 1 4 2 5 2 6 4 7 6 3 6 6 3 6 Vectorii 4, 5, 6 şi 7 conţin următoarele elemente, în ordine:
• vectorul 4: 3, 6
• vectorul 5: 3, 6, 6
• vectorul 6: 3, 6, 6, 3, 6, 6
• vectorul 7: 3, 6, 6, 3, 6, 6, 9

autor: Mugurel Ionuţ Andreica
propunător: Prof. Emanuela Cerchez
Liceul de Informatică ″Grigore Moisil″
emanuela.cerchez@gmail.com
Articole recomandate
Probleme recomandate
De la Lot AB 2010: codif, game1, piatra, miere, left, acerc, autostrazi, bubblesort, hawaii, radio1, randomizare, tetris1, trenuri1
De acelaşi autor: autobuze, bile, complex, balaur, vmem, kreg, ro, jobs, senzori, echipe, agitatie, center, algebra, tgraf, bcast, promo, asmax, sediu, granita, string, poligon1, csir, lsort, zoo, bombo, ab3, soc, rsp, tcast, tj, lanterna, base3, color, trans, ic, xp, v2d, ppcover, asfalt1, module, gxor
Despre graf: gropi, tgv, matrice2, miniasm, picnic, mere, circuit, soldati, arce, conflicte, desen, robot, furtuna, net, cuvinte, excursie, cadere, pioni, reinvent, kreg, flood, croco, johnie, matrice, arthur, kimberley, ro, sol, caravane, bete, honest, police, pcod, zmeu, auto2, grazing, datorii, trafic, sponsori, monede1, apm, bile1, caini, masina1, bomboane, turn1, shgraf, paintball, program1, tgraf, kgb, algola, felinar, joc6, tric, homeless, promo, turism, casute, joc10, prieteni1, traseu, zapezi, litoral, lover, trip, garaj, ziduri, tv, pact, echipe1, vitale, spion, trasee, bcolor, scara2, lant, ab3, soc, team, gard, rsp, graf, mexc, dep, albinuta1, atac2, cabane, drumuri, tj, grade, jungla, lanterna, magic5, coment, urgenta, fazan, lanturi, cfr, site, traseu1, trmv, graphgame, minuni, telefon, ubergraf, pestera, chei, arbgraf, war, fluviu, drumuri1, entries, ubuntzei, pack, fotbal1, pamant, dag, razboi, benzina2, wg, neconex, asfalt1, kubus2, module, progresii, dfs, prieteni3, megascoala, grafxy, dineu, vot1, biperm, drumuri2, nrgraf, cristal, cartite, copaci3, dragoni, nuclee
Despre arbori: bonuri, tgv, barfa, votare, arce, balaur, trains, bile2, vmem, plopi, caravane, mese, strict, tree, sub, kinder, firma1, albinuta, rlcs, masina, omizi, concurs1, latime, piloti, barca1, arbnr, sirag1, pikachu, arb, logn, maxq, arbore, bcast, mesaj1, traseu, asmax, salvare, tramvai1, omida, sediu, string, tv, izo, zoo, ratina, vitale, camion1, arbfind, cezar1, tcast, dep, curent, spp, frunze, sea2, culori, color, urgenta, nori, treegame, antipatie, scanduri, minuni, arb1, activ, regat, kdtree, autostrazi, trenuri1, arbgraf, war, mess, secvnumber, subs, posta, radare, arbore1, hacker, lista, codarb, subsecvente, confuzie, transform, arbsum, copaci3, arbvalmax
surse trimise | ajutor