Cod sursa(job #2483015)

Utilizator twiliamioanToader Wiliam Ioan twiliamioan Data 29 octombrie 2019 10:08:48
Problema Subsir crescator maximal Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.76 kb
#include <fstream>

using namespace std;

int main(){
    ifstream fin("scmax.in");
    ofstream fout("scmax.out");
    long long int v[100000], n;
    long long prev_p = 0, p = 0, prev, mf, me, m=-1, r=0, rm =0;
    fin >> n;
    for(int i = 0; i < n; i++){
        fin >> v[i];
    }

    for(int i = 0; i < n - 1; i++){
        if(v[i] >= v[i+1]){p = i+1;r = 0;}
        if(v[i] == v[i+1]) r++;
        if(p - prev_p +1 >= m){ m = p - prev_p +1; mf = prev_p; me = p+1;rm = r;}
        prev_p = p;
    }

    fout << m - rm + 1 << endl;
    if(m > -1)for(int i = mf; i <= me; i++) {
        if(i != me && v[i] != v[i+1])fout << v[i] << ' ';
        else if(i == me) fout << v[i] << ' ';
    }
    fin.close();
    fout.close();
    return 0;
}