Cod sursa(job #1998753)

Utilizator dumitrescu_andreiDumitrescu Andrei dumitrescu_andrei Data 8 iulie 2017 23:58:19
Problema Subsir crescator maximal Scor 70
Compilator cpp Status done
Runda Arhiva educationala Marime 0.66 kb
#include <bits/stdc++.h>
#define Max 100001
using namespace std;
ifstream f("scmax.in");
ofstream g("scmax.out");


int a[Max],p[Max],ant[Max],n;

void afis(int x)
{
    if(x)
    {
        afis(ant[x]);
        g<<a[x]<<" ";
    }
}

int main()
{
    f>>n;
    for(int i=1;i<=n;++i)
        f>>a[i],p[i]=1;

    for(int i=1;i<n;++i)
        for(int j=i+1;j<=n;++j)
        if(a[j]>a[i] && p[j]<p[i]+1)
    {
        p[j]=p[i]+1;
        ant[j]=i;
    }



    int Maxim=0,ind;
    for(int i=1;i<=n;++i)
        if(p[i]>Maxim)
    {
        Maxim=p[i];
        ind=i;
    }
    g<<Maxim<<'\n';
  afis(ind);
    return 0;




}