Cod sursa(job #1887253)

Utilizator OXIgeniusAilenei Dorin OXIgenius Data 21 februarie 2017 14:30:35
Problema Subsir crescator maximal Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.81 kb
#include <fstream>
  
using namespace std;
  
ifstream in("scmax.in");
ofstream out("scmax.out");
  
int main()
{
    int n,v[100001],i,pi,pf,pfs,pis,ntf,ntc1;
    in>>n;
    for(i=0;i<n;i++)
        in>>v[i];
    pi=0;
    pf=0;
    pfs=0;
    pis=0;
    ntf=1;
    ntc1=1;
	ntr=0;
    for(i=0;i<n-1;i++)
    {
        if(v[i]<=v[i+1])
        {
            pf++;
            if(v[i]==v[i+1])
                ntr++;
        }
	ntc1=pf-pi+1-ntr;
        else
        {

            pi=pf+1;
            ntf=ntc1;
            ntc1=1;
            pf++;
        }
        if(ntf<ntc1)
        {
            pis=pi;
            pfs=pf;
            ntf=ntc1;
        }
    }
    out<<ntf<<"\n";
    for(i=pis;i<=pfs;i++)
        if(v[i]!=v[i+1])
            out<<v[i]<<" ";
    return 0;
}