Fișierul intrare/ieșire | invector.in, invector.out | Sursă | Cerc informatică Vianu |
---|---|---|---|
Autor | din folclor | Adăugată de | Cristian Frâncu • francu |
Timp de execuție pe test | 0.2 sec | Limită de memorie | 16384 KB |
Scorul tău | N/A | Dificultate |
Vezi soluțiile trimise | Statistici
Invector (clasa a 7-a)
Notă: acesta este un exercițiu introductiv în recursivitate. Pentru a avea sens respectați cerința întocmai, rezolvîndu-l cu o funcție recursivă. Dacă scrieți corect funcția ea nu trebuie să conțină instrucțiuni de ciclare, gen for, while sau do ... while.
Să se răstoarne un vector folosind o funcție recursivă. Vectorul trebuie modificat, nu doar afișat invers. Funcția va arăta astfel:
void inv( int primul, int ultimul, int v[] ) {
$ ...$
}
unde primul și ultimul sînt indicii de început, respecitiv sfîrșit care definesc subvectorul de răsturnat. Funcția va fi apelată inițial astfel:
inv( 0, n-1, v );
Date de intrare
Fișierul de intrare invector.in va conține pe prima linie n, numărul de elemente al vectorului. Pe a doua linie va conține n întregi, separați prin spații, și anume cele n elemente ale vectorului.
Date de ieșire
Fișierul de ieșire invector.out va conține pe prima și singura linie cele n ale vectorului răsturnat, separate prin spații.
Restricții
- 1 ≤ n ≤ 100 000
- Elementele vectorului sînt numere întregi între 0 și 1 000 000 000
Exemplu
invector.in | invector.out |
---|---|
6 1 9 2 5 7 8 |
8 7 5 2 9 1 |