Cod sursa(job #2395874)

Utilizator Rmrn56Maracine Mihail Robert Rmrn56 Data 2 aprilie 2019 22:37:52
Problema Subsir crescator maximal Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.94 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("scmax.in");
ofstream fout("scmax.out");
int main()
{
    int n, v[101], i, nr=0, k, l=1;

    fin >> n;// nr de numere

    fin >> v[1];// citesc primul element
    for (i=2; i<=n; i++)
    {
        fin >> v[i];
        if (v[i]>=v[i-1]) nr++; // verific daca elementul curent e mai mare ca cel precedent
        else
            {
                if (nr>=l)
                {
                    k=i-1;
                    l=nr;
                } // la sfarsitul unei secvente verfic daca este maxima, retin lungimea ei si pozitia ultimului element
                nr=1;// restez lungimea secventei
            }

    }
    if (nr>=l)
    {
        k=i-1;
        l=nr;
    }// daca ultimul element este capatul unei secvente, fac o ultima verificare si pentru aceasta
   fout<<l<<'\n';
    for (i=k-l+1; i<=k; i++) fout << v[i] << ' ';

    return 0;
}