Pagini recente » Istoria paginii utilizator/roznek | Cod sursa (job #675040) | Profil 8charlottec122fr4 | Cod sursa (job #2706614) | Cod sursa (job #444857)
Cod sursa(job #444857)
#include<cstdio>
using namespace std;
long n,v[100002],i,l[100002],k,maxim,t;
int main()
{
freopen("scmax.in","r",stdin);
freopen("scmax.out","w",stdout);
scanf("%ld\n",&n);
for(i=1;i<=n;i++)
scanf("%ld",&v[i]);
l[n]=1;
for(k=n-1;k>=1;k--)
{ maxim=0;
for(i=k+1;i<=n;i++)
if((v[i]>v[k])&&(l[i]>maxim))
maxim=l[i];
l[k]=1+maxim;
}
maxim=l[1];
t=1;
for(k=1;k<=n;k++)
if(l[k]>maxim)
{
maxim=l[k];
t=k;
}
printf("%ld",maxim);
printf("\n");
printf("%ld ",v[t]);
for(i=t+1;i<=n;i++)
if((v[i]>v[t])&&(l[i]==maxim-1))
{
printf("%ld ",v[i]);
maxim--;
}
return 0;}