Cod sursa(job #2119120)

Utilizator anamariazidaruZidaru Ana-Maria anamariazidaru Data 31 ianuarie 2018 17:56:36
Problema Subsir crescator maximal Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 0.78 kb
#include <iostream>
#include <fstream>

using namespace std;

const int N=100001;
int a[N], n, dp[N], m, poz, c, p[N];
ifstream f ("scmax.in");
ofstream g ("scmax.out");

void lm (int x)
{
    int i, k=2;
    c=0;
    p[1]=a[x];
    for (i=x; i<=n; i++)
    {
        if (a[i]<a[i+1])
        {
            c++;
            p[k++]=a[i+1];
        }
    }
    m=k;
}

int main()
{
    int i, j;
    f>>n;
    for (i=1; i<=n; i++)
    {
        f>>a[i];
    }
    for (i=1; i<=n; i++)
        for (j=1; j<=n; j++)
        {
            if (a[j]>a[i] && j>i) dp[i]++;
        }
        m=0;
    for (i=1; i<=n; i++)
        if (dp[i]>m)
        {
            m=dp[i];
            poz=i;
        }
    lm(poz);
    g<<c+1<<'\n';
    for (i=1; i<m; i++)
    {
        g<<p[i]<<" ";
    }
    return 0;
}