Pagini recente » Cod sursa (job #1810599) | Cod sursa (job #2245341) | Cod sursa (job #3129978) | Cod sursa (job #97180) | Cod sursa (job #680408)
Cod sursa(job #680408)
#include<fstream>
using namespace std;
int n,a[1000],x[1000],y[1000],maxx;
void cit()
{int i;
ifstream f("m.in");
f>>n;
for(i=1;i<=n;i++)
f>>a[i];
f.close();
}
void prel()
{int i,j,p,ok;
x[n]=1;
y[n]=-1;
for(i=n-1;i>0;i--)
{ok=0;
for(j=i+1;j<=n && ok==0;j++)
if(a[i]<a[j])
{x[i]=x[j]+1;
if(x[i]>maxx)
{maxx=x[i];
p=i;
}
ok=1;
y[i]=j;
}
if(ok==0)
y[i]=-1;
}
ofstream g("m.out");
g<<maxx<<'\n';
for(i=p;i>0;)
{g<<a[i]<<' ';
i=y[i];
}
}
int main()
{cit();
prel();
return 0;
}