Fişierul intrare/ieşire: | compus.in, compus.out | Sursă | Cerc informatică Vianu |
Autor | Cristian Francu | Adăugată de | |
Timp execuţie pe test | 0.05 sec | Limită de memorie | 2048 kbytes |
Scorul tău | N/A | Dificultate |
Vezi solutiile trimise | Statistici
Compus (clasa a 5-a)
Notă: această problemă este un exerciţiu de lucru cu vectori, în scop didactic. De aceea, pentru a vă exersa cunoştinţele de bază, scrieţi citirea vectorului precum şi afişarea lui separat de prelucrări. Cu alte cuvinte, nu căutaţi elementul în timp ce citiţi vectorul şi nu afişaţi vectorul începînd cu poziţia 1, pentru a scurtcircuita operaţiunea de rotaţie cu 1.
Se citesc n, e, p şi apoi n numere naturale. Se cere să se execute următoarele transformări:
- Să se elimine prima apariţie a elementului e în vector.
- Să se adauge elementul e pe poziţia p în vectorul format.
- Să se răstoarne vectorul astfel format.
- Să se rotească vectorul astfel format cu o poziţie către începutul vectorului.
În final se va afişa vectorul rezultat.
Date de intrare
Fişierul de intrare compus.in conţine pe prima linie cele trei numere n, e, p, cu semnificaţia de mai sus. Pe a doua linie conţine n numere naturale.
Date de ieşire
Fişierul de ieşire compus.out va conţine cele n numere alre vectorului după executarea, în ordine, a operaţiilor cerute.
Restricţii
- 1 ≤ n ≤ 10000
- poziţiile în vector încep de la zero (zero este poziţia primului element din vector)
- Se garantează că e apare în vectorul iniţial
- 0 ≤ p ≤ n-1
Exemplu
compus.in | compus.out | Explicaţie |
---|---|---|
7 5 3 6 3 7 8 5 2 5 | 2 8 5 7 3 6 5 | Prima apariţie a elementului 5 trebuie eliminată din vector. După eliminare vectorul este 6 3 7 8 2 5 Inserăm 5 pe poziţia 3: 6 3 7 5 8 2 5 Răsturnăm vectorul: 5 2 8 5 7 3 6 Rotim vectorul cu 1: 2 8 5 7 3 6 5 |