Informatică, întrebare adresată de IonutzG, 8 ani în urmă

Cerință
Dalina are n bile așezate într-o linie, fiecare bilă având un număr natural scris pe ea. Ea citește valorile de pe bile de la stânga la dreapta și le scrie pe o foaie. Fiind foarte ocupată în perioada aceasta, Dalina îți cere să o ajuți cu reorganizarea și să inversezi șirul de numere înainte să ii înapoiezi foaia.

Date de intrare
Pe prima linie se află n, numărul de bile. Pe următoarea linie sunt n numere naturale, reprezentând valorile scrise de Dalina pe foaie.

Date de ieșire
Se vor afișa n numere, reprezentând șirul inversat. Cele n numere se vor afla pe o singură linie, separate prin câte un spațiu.

Restricții
1 ≤ n ≤ 100 000
Șirul conține numere naturale mai mici decât 1 000 000
Cerința problemei este să se memoreze elementele citite într-un șir și să se inverseze în memorie, nu doar să se afișeze de la dreapta la stânga!
Această problemă poate apărea în cadrul interviurilor de angajare.
Exemplu
Date de intrare Date de ieșire
5
4 3 5 7 8 8 7 5 3 4

Răspunsuri la întrebare

Răspuns de Sergetec
1

Salut!

Ai rezolvarea in C++ mai jos

#include <iostream>

using namespace std;

int main()

{

 int n, a[100001], aux[100001];

 cin >> n;

 for (int i = 1; i <= n; ++i)

 {

   cin >> a[i];

   aux[i] = a[i];

 }

 int j = n;

 for (int i = 1; i <= n; ++i)

 {

   aux[i] = a[j];

   j--;

 }

 for (int i = 1; i <= n; ++i)

 {

   cout << aux[i] << " ";

 }

 return 0;

}

Alte întrebări interesante