Se consideră C
o coadă de numere naturale, iniţial vidă. Se definesc 2 tipuri de operaţii.
Operaţia 1
: push X
, adaugă elementul X
în coadă. Dacă X
există deja în coadă, se scot toate elementele din coadă, pana la întâlnirea lui, inclusiv X
.
Exemplu:
C: 2 4 5 1 6
Push 5
C: 1 6 5
( s-au scos 2, 4, 5
).
Operaţia 2
: query X
, cere afişarea poziţiei elementului X
în coada C
. Dacă elementul nu există în coadă, se afişează -1
.
Exemplu:
C: 2 5 1 3 7
Query 1
Răspuns: 3
Cerința
Dându-se M
, reprezentând numărul de operaţii şi cele M
operaţii, să se răspundă la operaţiile de tip query
.
Date de intrare
Fișierul de intrare coada1.in
conține:
- Pe prima linie numărul natural
M
; - Pe următoarele
M
linii, câte un string şi câte un număr natural, de formatip_operaţie x
, reprezentândtipul operaţiei
şi numărulX
.
Date de ieșire
Fișierul de ieșire coada1.out
va conține:
- Răspunsurile pentru operaţiile de tip
query
, câte unul pe linie.
Restricții și precizări
1 <= M <= 50 000
1 <= X <= 1 000
Exemplu
coada1.in
10 push 3 push 6 push 8 push 2 query 6 push 6 query 4 push 6 push 7 query 6
coada1.out
2 -1 1
Explicație
Înaintea primei întrebări, coada arată asa: 3 6 8 2
, deci 6
apare pe poziţia 2
.
Înaintea celei de-a doua întrebări, coada arată asa: 8 2 6
, deci 4
nu apare.
Înaintea ultimei întrebări, coada arată asa: 6 7
, deci 6
apare pe poziţia 1
.
Cum e corect?
cout < "As la info";
cout << "As la info";
cout >> "As la info";
Felicitări! Poți mai mult?
Avem sute de probleme pentru tine, fiecare cu explicații ușor de înțeles.
Greșit, dar nu-i bai!
Antrenează-te cu sutele de probleme pe care ți le-am pregătit. Îți explicăm fiecare problemă în parte.
Rezolvare
Iată rezolvarea de 100 de puncte pentru problema Coada1:
Exemplu:
C: 2 4 5 1 6
Push 5
C: 1 6 5 ( s-au scos 2, 4, 5).
Atenție
Enunțurile afișate pe această pagină aparțin exclusiv site-ului PbInfo. Astfel, pentru ștergerea conținutului, puteți să ne contactați la adresa .
Rezolvarea problemei #1598 Coada1
Pe această pagină găsești rezolvarea de 100 de puncte pentru problema #1598 Coada1 de pe PbInfo.ro. Atenție: nu încurajăm copiatul codului! Totuși, credem cu tărie că analizarea unei soluții corecte este o metodă foarte ușoară de a învăța informatică, astfel că oferim sursele pentru peste 1500 de probleme de pe platforma PbInfo.ro.
Pentru rezolvări PbInfo de la peste 1500 de probleme, vă invităm să intrați pe site-ul nostru!