Cod sursa(job #2926712)

Utilizator RobertlelRobert Robertlel Data 18 octombrie 2022 14:56:05
Problema Subsir crescator maximal Scor 70
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.75 kb
#include <iostream>
#include <fstream>
#include <algorithm>

using namespace std;

ifstream f("scmax.in");
ofstream g("scmax.out");

int n , i , maxl , j , v[100005] , l[100005] , maxim;



int main()
{
    f >> n;
    for(i = 1 ; i <= n ; i++)
        f >> v[i];
    l[n] = 1;
    for(i = n - 1 ; i >= 1 ; i--)
    {
        maxl = 0;
        for(j = i + 1 ; j <= n ; j++)
        {
            if(v[i] < v[j] && l[j] > maxl)
                maxl = l[j];
        }
        l[i] = maxl + 1;
        if(l[i] > maxim)
            maxim = l[i];
    }
    g << maxim << '\n';

    for(i = 1 ; i <= n ; i++)
    {
        if(l[i] == maxim)
        {
            g << v[i] << " ";
            maxim--;
        }
    }
    return 0;
}