Cod sursa(job #2036080)

Utilizator cristicretancristi cretan cristicretan Data 10 octombrie 2017 11:44:03
Problema Subsir crescator maximal Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.97 kb
/*
ID: cristicretan
PROG: Subsir crescator maximal
LANG: C++14
*/
#include <iostream>
#include <fstream>
#include <cstdio>
#define NMax 100001
//#define f cin
//#define g cout
using namespace std;

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

int n, a[NMax], ans, best[NMax], poz[NMax], mx, p, sol[NMax];

int main()
{
    f >> n;
    //best[n] = 1;
    //poz[n] = -1;
    //mx = 1;
    //p = n;
    for(int i = 0; i < n; ++i)
    {
        f >> a[i];
        if(i > 0 && a[i] > a[i - 1])
        {
            sol[++ans] = a[i - 1];
            sol[++ans] = a[i];
        }
        else ans = -1;
    }

    for (int i = 0; i < ans; ++i)
       {
           for(int j = ans; j > i; --j)
             if (sol[i] == sol[j])
               {
                  sol[j] = sol[j + 1];
                  --ans;
               }
       }

    g << ans + 1 << '\n';

    for(int i = 0; i <= ans; ++i)
        g << sol[i] << " ";
    return 0;
}