Cod sursa(job #2204519)

Utilizator vlad_zincaZinca Vlad vlad_zinca Data 16 mai 2018 09:29:49
Problema Subsir crescator maximal Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.71 kb
#include <fstream>
using namespace std;
ifstream f("scmax.in");
ofstream g("scmax.out");
int n, a[100], lg[100], i, j, lgmax, Max, p, ult;

int main()
{
    f>>n;
    for (i=1; i<=n; i++)
        f>>a[i];
    lg[n]=1;
    for (i=n-1; i>=1; i--)
    {
        lgmax=0;
        for (j=i+1; j<=n; j++)
            if (a[i]<a[j] && lg[j]>lgmax) lgmax=lg[j];
        lg[i]=lgmax+1;
        if (lg[i]>Max)
        {
            Max=lg[i];
            p=i;
        }
    }
    g<<Max<<endl;
    g<<a[p]<<" ";
    ult=a[p];
    Max--;
    for (i=p+1; i<=n; i++)
        if (a[i]>ult && Max==lg[i])
        {
            g<<a[i]<<" ";
            ult=a[i];
            Max--;
        }
    return 0;
}