Cod sursa(job #2559197)

Utilizator Denis9365Leonte Denis Denis9365 Data 27 februarie 2020 09:27:29
Problema Subsir crescator maximal Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 1.04 kb
#include <iostream>
#include <fstream>

using namespace std;

int main()
{
    int v[10];
    int n;
    int x;
    ifstream in("scmax.in");
    in>>n;
    int aa = 1;
    while(in>>x)
    {
        v[aa] = x;
        aa++;
    }
    int l[10], poz[10];
    int Maxx, p;
     l[n] = 1;
    poz[n] = 0;
    for(int i = n-1;i>=1;i--)
    {
        Maxx = 0;
        p = 0;
        for(int j = i+1;j<=n;j++)
        {
            if(l[j] > Maxx && v[i]<v[j])
            {
                Maxx = l[j];
                p = j;
            }
        }
        l[i] = 1 + Maxx;
        poz[i] = p;
    }

    Maxx = 0;
    p = 0;
    for(int i = 1; i<=n;i++)
    {
        if(l[i] > Maxx)
        {
            Maxx = l[i];
            p = i;
        }
    }
    int Maxp = 0;
    for(int i = 1; i<=n;i++)
    {
        if(l[i]>Maxp)
            Maxp = l[i];
    }

    ofstream out("scmax.out");
    out<<Maxp<<endl;
    while(p!=0)
    {
        out<<v[p]<<" ";
        p = poz[p];
    }
    return 0;
}