Pagini recente » Cod sursa (job #2570780) | Cod sursa (job #112398) | Cod sursa (job #2501660) | Cod sursa (job #2776395) | Cod sursa (job #1836166)
#include <iostream>
#include <fstream>
using namespace std;
#define nmax 100005
ifstream f("scmax.in");
ofstream g("scmax.out");
int n,nr,v[nmax],t,i,inv,p,sfv,dif,maxd,imax,rep;bool b[nmax];
struct insf{int in,sf,rep;}pos[nmax];
int main()
{
f>>n;
for(i=0;i<n;i++)
{
f>>v[i];
}
inv=0;
for(i=1;i<=n;i++)
if(v[i-1]>v[i])
{
pos[p].in=inv;
pos[p].sf=i-1;
pos[p++].rep=rep;
inv=i;
rep=0;
}
else if(v[i-1]==v[i]){b[i]=1;rep++;}
for(i=0;i<p;i++)
{
dif=pos[i].sf-pos[i].in-pos[i].rep+1;
if(dif>maxd){maxd=dif;imax=i;}
}
g<<maxd<<'\n';
for(i=pos[imax].in;i<=pos[imax].sf;i++)
if(!b[i])g<<v[i]<<" ";
return 0;
}