Informatică, întrebare adresată de Giliman191, 9 ani în urmă

Se dă un şir cu n numere naturale. Să se determine un alt şir de numere, cu proprietatea că valoarea elementului de pe poziţia i (1 ≤ i ≤ n) din acest şir este egală cu cea mai mare dintre valorile primelor i elemente din primul şir.

Date de intrare
Fişierul de intrare maxn.in conţine pe prima linie numărul n, iar pe a următoarele linii n numere naturale separate prin spaţii.

Date de ieşire
Fişierul de ieşire maxn.out va conţine pe prima linie n numere, separate prin câte un spaţiu, reprezentând elementele şirului determinat.

Restricţii şi precizări
1 ≤ n ≤ 100000
numerele de pe a doua linie a fişierului de intrare vor avea cel mult 9 cifre

Exemplu
maxn.in

12
4 6 3 7 8 1 6 2 7 9 10 8
maxn.out

4 6 6 7 8 8 8 8 8 9 10 10

Răspunsuri la întrebare

Răspuns de Razzvy
1
#include <fstream>
using namespace std;

ifstream fin("maxn.in");
ofstream fout("maxn.out");

int main()
{
    int n, x, mx = 0;
    fin >> n;
    while (n--)
    {
        fin >> x;
        if (x > mx) mx = x;
        fout << mx << ' ';
    }
}
Alte întrebări interesante