Cod sursa(job #1778255)

Utilizator stefan_gheorgheGheorghe Stefan stefan_gheorghe Data 13 octombrie 2016 17:26:42
Problema Subsir crescator maximal Scor 70
Compilator cpp Status done
Runda Arhiva educationala Marime 0.69 kb
#include <fstream>
using namespace std;
ifstream f("scmax.in");
ofstream g("scmax.out");
int n,a[100001],L[100001],i,Max,x;
void dload(int x){int Max=1;for (int i=x;i<=n;i++) if (Max<L[i]) Max=L[i],x=i; g<<Max; dload(x+1);}
int main()
{int i=1;
    f>>n;
    for (int i=1;i<=n;i++) f>>a[i];
    for (i=n;i>=1;i--)
        {
            for (int j=i+1;j<=n;j++)
            if (a[i]<a[j])
                if (L[i]<=L[j])
                    L[i]=L[j]+1;
            if (!L[i])L[i]=1;
        }
    Max=1;
    for (i=1;i<=n;i++) if (Max<L[i]) Max=L[i];
    x=1;g<<Max<<'\n';
    while (Max>=1){for (int i=x;i<=n;i++) if (L[i]==Max) {x=i,g<<a[i]<<' ',Max--;break;}}
    return 0;
}