Fișierul intrare/ieșire invector.in, invector.out Sursă Cerc informatică Vianu
Autor din folclor Adăugată de avatar francu Cristian Frâncu francu
Timp de execuție pe test 0.2 sec Limită de memorie 16384 KB
Scorul tău N/A Dificultate stea de rating de tip fullstea de rating de tip emptystea de rating de tip emptystea de rating de tip emptystea de rating de tip empty
open book Poți vedea testele pentru această problemă accesând atașamentele .

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

Trebuie să te autentifici pentru a trimite soluții. Click aici

Indicii de rezolvare

Arată 3 categorii