Cod sursa(job #1996726)

Utilizator AplayLazar Laurentiu Aplay Data 2 iulie 2017 14:39:46
Problema Subsir crescator maximal Scor 35
Compilator cpp Status done
Runda Arhiva educationala Marime 0.7 kb
#include <iostream>
#include <stdio.h>
#include <vector>

using namespace std;

int N, ans;
vector<int> numbers, dp;

int main() {
    freopen("scmax.in", "r", stdin);
    freopen("scmax.out", "w", stdout);

    cin >> N;
    for (int it = 0; it < N; ++it) {
        int temp;
        cin >> temp;
        numbers.push_back(temp);
    }

    ans = 1;
    for (int it = 0; it < N; ++it) {
        dp.push_back(1);
        for (int jt = it - 1; 0 <= jt; --jt) {
            if (numbers[jt] < numbers[it] && dp[it] < dp[jt] + 1) {
                dp[it] = dp[jt] + 1;
                if (ans < dp[it]) ans = dp[it];
            }
        }
    }

    cout << ans << endl;

    return 0;
}