Cod sursa(job #2192951)

Utilizator SteffaniaFratean Stefania Steffania Data 7 aprilie 2018 20:39:43
Problema Subsir crescator maximal Scor 35
Compilator cpp Status done
Runda Arhiva educationala Marime 0.87 kb
#include <bits/stdc++.h>

using namespace std;

ifstream f("scmax.in");
ofstream g("scmax.out");

int a[100001], n, pozitii[100001];
int i, j, ok;
int nr_elem;
int max_elem;
int poz_inceput;
int main()
{
    f>>n;
    for(int i=1; i<=n; i++)
    {
        f>>a[i];
    }

    for(i=1; i<=n; i++)
    {
        ok=0;
        nr_elem=0;
        for(j=1; j<=i; j++)
        {
            if(a[i] > a[j] && pozitii[j]>nr_elem)
            {
                nr_elem=pozitii[j];
                ok=1;
            }
        }
        if(ok==0)
            pozitii[i]=1;
        else pozitii[i] = nr_elem +1;
        if(max_elem < pozitii[i])
        {
            max_elem = pozitii[i];
            poz_inceput = i;
        }
    }
    g<<max_elem;
    g<<endl;

    for(j=poz_inceput-max_elem; j<=poz_inceput; j++)
    {
        if(a[j]==a[j+1]) j++;
        g<<a[j]<<" ";
    }



    return 0;
}