Pagini recente » Cod sursa (job #2472627) | Cod sursa (job #2486666) | Cod sursa (job #1151407) | Cod sursa (job #732708) | Cod sursa (job #189011)
Cod sursa(job #189011)
#include<fstream>
#define dim 100001
using namespace std;
int lung[dim],poz[dim],pztr,cur,a[dim],i,j,m,p,n;
ifstream fin("scmax.in");
ofstream fout("scmax.out");
void rec(int i);
int main()
{
fin>>n;
for(i=1;i<=n;++i)
fin>>a[i];
lung[1]=1; poz[1]=0;
for(i=2;i<=n;++i)
{
cur=0; pztr=0;
for(j=1;j<i;++j)
if(a[j]<a[i]&&lung[j]>cur)
{
cur=lung[j];
pztr=j;
}
poz[i]=pztr;
lung[i]=cur+1;
if(m<lung[i])
{
m=lung[i];
p=i;
}
}
fout<<m<<endl;
rec(p);
}
void rec(int i)
{
if(i)
{
rec(poz[i]);
fout<<a[i]<<" ";
}
}