Cod sursa(job #2457669)

Utilizator minecraft3Vintila Valentin Ioan minecraft3 Data 18 septembrie 2019 14:50:07
Problema Subsir crescator maximal Scor 70
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.66 kb
#include <bits/stdc++.h>

using namespace std;

int v[100005], l[100005], preds[100005], n, ml = 0, maxl;

ifstream fin("scmax.in");
ofstream fout("scmax.out");

void f(int i) {
    if(preds[i] != -1) {
        f(preds[i]);
    }
    (fout << v[i]).put(' ');
}

int main() {
    int i, j, k;
    fin >> n;
    for(i = 0; i < n; ++i) {
        fin >> v[i]; k = 0; preds[i] = -1;
        for(j = 0; j < i; ++j) {
            if(v[j] < v[i] && k < l[j]) {
                k = l[j];
                preds[i] = j;
            }
        }
        l[i] = 1 + k;
        if(l[ml] < l[i]) ml = i;
    }

    (fout << l[ml]).put('\n');
    f(ml);
}