Cod sursa(job #1959200)

Utilizator igroitaGroita Igor igroita Data 9 aprilie 2017 10:35:34
Problema Subsir crescator maximal Scor 70
Compilator cpp Status done
Runda Arhiva educationala Marime 0.54 kb
#include<fstream>

using namespace std;

ifstream cin("scmax.in");
ofstream cout("scmax.out");
 int n, v[100010], pred[100010], imax=0;
 long long a[100010];

void write(int i){
    if(pred[i]) write(pred[i]);
    cout<<a[i]<<"  ";
}

int main(){
    cin>>n;
    for(int i=1; i<=n; ++i){
        cin>>a[i];v[i]=1;
        for(int j=1; j<i; ++j){
            if(a[j]<a[i] && v[j]+1>v[i]){
                v[i]=v[j]+1; pred[i]=j;
            }
        }
        if(v[imax]<v[i]) imax=i;
    }

    cout<<v[imax]<<"\n";
    write(imax);



    return 0;
}