Pagini recente » Cod sursa (job #679303) | Cod sursa (job #2688167) | Cod sursa (job #2301400) | Cod sursa (job #1371974) | Cod sursa (job #689474)
Cod sursa(job #689474)
#include<fstream>
using namespace std;
int main()
{
ifstream f("scmax.in");
ofstream g("scmax.out");
int v[100001],poz[100001],l[100001],i,j,p,max,n;
f>>n;
for (i=1;i<=n;i++) l[i]=1;
for (i=1;i<=n;i++)
f>>v[i];
for (i=n-1;i>=1;i--)
{
max=p=0;
for (j=i+1;j<=n;j++)
if (v[i]<v[j]&&l[j]>=max)
{
max=l[j];
p=j;
}
l[i]=max+1;
poz[i]=p;
}
max=p=0;
for (i=1;i<=n;i++)
if (max<l[i]){ max=l[i];p=i;}
g<<max<<'\n';
while (p>0)
{
g<<v[p]<<' ';
p=poz[p];
}
return 0;
}