Pagini recente » Cod sursa (job #2527465) | Cod sursa (job #3166932) | Cod sursa (job #682172) | Cod sursa (job #53149) | Cod sursa (job #240506)
Cod sursa(job #240506)
#include <iostream.h>
#include <fstream.h>
ifstream fin("scmax.in");
ofstream fout("scmax.out");
long v[20005];
long l[20005];
long n,k,max,t;
int main()
{
int i;
fin>>n;
for(i=1;i<=n;i++)
fin>>v[i];
fin.close();
l[n]=1;
for(k=n-1;k>=1;k--)
{
max=0;
for(i=k+1;i<=n;i++)
if(v[i]>v[k] && l[i]>max)
max=l[i];
l[k]=1+max;
}
max=l[1];
t=1;
for(k=1;k<=n;k++)
if(l[k]>max)
{
max=l[k];
t=k;
}
fout<<max<<endl<<v[t]<<" ";
for(i=t+1;i<=n;i++)
if(v[i]>v[t] && l[i]==max-1)
{
fout<<v[i]<<" ";
max--;
}
fout.close();
}