Cod sursa(job #2130225)

Utilizator madalina.andronAndronache Madalina madalina.andron Data 13 februarie 2018 15:49:19
Problema Subsir crescator maximal Scor 70
Compilator cpp Status done
Runda Arhiva educationala Marime 0.62 kb
#include <fstream>

using namespace std;
ifstream f("scmax.in");
ofstream g("scmax.out");
long long a[100005],n,l[100005],b[100005],lmax,Max,i,j,poz,nr;
int main()
{f>>n;
for(i=1;i<=n;i++)
    f>>a[i];
l[1]=1;
lmax=1;
for(i=2;i<=n;i++)
{
    Max=0;
    for(j=i-1;j>=1;j--)
    if(Max<l[j] && a[i]>a[j])
        Max=l[j];
    l[i]=Max+1;
    if(l[i]>lmax)
    {
        lmax=l[i];
        poz=i;
    }
}
g<<lmax<<endl;
nr=1;
b[nr]=a[poz];
lmax--;
for(i=poz-1;i>=1;i--)
    if(a[i]<b[nr] && l[i]==lmax)
{
    nr++;
    b[nr]=a[i];
    lmax--;
}
for(i=nr;i>=1;i--)
    g<<b[i]<<" ";
    return 0;
}