Pagini recente » Cod sursa (job #2015066) | Cod sursa (job #705956) | Cod sursa (job #174876) | Rating UPT Sirb Popovici Rugea (UPT.CVLP) | Cod sursa (job #403806)
Cod sursa(job #403806)
#include<cstdio>
#define lgmax 100001
using namespace std;
int n,v[lgmax],i,k,L[lgmax],mx,max,t;
int main()
{
freopen("scmax.in","r",stdin);
freopen("scmax.out","w",stdout);
scanf("%d",&n);
for(i=1;i<=n;i++) scanf("%d",&v[i]);
L[n]=1;
for(k=n-1;k>=1;k--)
{
mx=0;
for(i=k+1;i<=n;i++)
if(v[k]<=v[i] && L[i]>mx)
mx=L[i];
L[k]=mx+1;
if(L[k]>max)
{
max=L[k];
t=k;
}
}
printf("%d\n",max);
printf("%d ",v[t]);
for(i=t+1;i<=n;i++)
if ( (v[i]>=v[t]) && (L[i]==max-1) )
{
printf("%d ",v[i]);
max--;
}
return 0;
}