Cod sursa(job #2572157)

Utilizator SorbanElodSorban Elod SorbanElod Data 5 martie 2020 11:55:52
Problema Subsir crescator maximal Scor 70
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.66 kb
//#include <iostream>
#include <fstream>

using namespace std;
ifstream f("scmax.in");
ofstream g("scmax.out");
const int MAX=100000;
int a[MAX],n,v[MAX],maxi=0,legh=1;
void beolvas(){
    f>>n;
    for(int i=0;i<n;i++){
        f>>a[i];
    }
}
int main(){
    beolvas();
    v[n-1]=1;
    for(int i=n-2;i>=0;i--){
        maxi=0;
        for(int j=i+1;j<n;j++){
            if(v[j]>maxi&&a[i]<a[j])maxi=v[j];
        }
        v[i]=maxi+1;
        if(maxi+1>legh)legh=maxi+1;
    }
    g<<legh<<'\n';
    for(int i=0;i<n;i++){
        if(v[i]==legh){
            legh--;
            g<<a[i]<<' ';
        }
    }
    g<<'\n';
    return 0;
}