Pagini recente » Cod sursa (job #2776424) | Cod sursa (job #1913788) | Cod sursa (job #747491) | Cod sursa (job #3003585) | Cod sursa (job #1969328)
#include <bits/stdc++.h>
#define Nmax 100001
using namespace std;
ifstream f("scmax.in");
ofstream g("scmax.out");
int v[Nmax];
int t[Nmax];
int lg[Nmax];
int main()
{int n,i,j;
f>>n;
for(i=1;i<=n;i++)
f>>v[i];
lg[n]=1;
t[n]=0;
for(i=n-1;i>0;i--)
{
int maxx=0,tata=0;
for(j=i+1;j<=n;j++)
if(v[j]>v[i])
{
if(lg[j]>maxx)
{
maxx=lg[j];
tata=j;
}
}
lg[i]=maxx+1;
t[i]=tata;
}
int maxx=0,poz;
for(i=1;i<=n;i++)
{
if(lg[i]>maxx)
{
maxx=lg[i];
poz=i;
}
}
g<<maxx<<'\n';
while(poz)
{
g<<v[poz]<<' ';
poz=t[poz];
}
return 0;
}