Cod sursa(job #2034126)

Utilizator DumitresculEDumitrescul Eduard DumitresculE Data 7 octombrie 2017 14:35:15
Problema Subsir crescator maximal Scor 70
Compilator cpp Status done
Runda Arhiva educationala Marime 0.73 kb
#include <bits/stdc++.h>
using namespace std;
ifstream f("scmax.in");
ofstream g("scmax.out");
int x[100001],nr[100001],v[100001];
int main()
{
    int n,i,j,maxx,poz;
    f>>n;
    for(i=1;i<=n;i++)
        f>>x[i];
    nr[1]=1;
    for(i=2;i<=n;i++){
        maxx=0;
        for(j=1;j<i;j++)
            if(maxx<nr[j] and x[j]<x[i])
            maxx=nr[j];
        nr[i]=maxx+1;
    }
    maxx=0;
    for(i=1;i<=n;i++)
        if(maxx<nr[i])
        {maxx=nr[i];poz=i;}
    g<<maxx<<"\n";
    int k=1;
    v[1]=x[poz];
    for(i=poz;i>=1;i--)
        if(nr[poz]==nr[i]+1){
            poz=i;
            k++;
            v[k]=x[poz];
        }
    for(i=k;i>=1;i--)
            g<<v[i]<<" ";

    return 0;
}