Pagini recente » Cod sursa (job #1460244) | Cod sursa (job #1789518) | Cod sursa (job #2754224) | Cod sursa (job #2081164) | Cod sursa (job #317872)
Cod sursa(job #317872)
#include<fstream.h>
int b[100003],v[100003], max,sol=0,pre[100003],p;
int n,i;
int main()
{int i,j;
ifstream q("scmax.in");
ofstream w("scmax.out");
q>>n;
for(i=1;i<=n;++i)
q>>v[i];
b[n]=1;
pre[n]=-1;
max=1; p=n;
for(i=n-1;i>=1;--i)
{b[i]=1;
pre[i]=-1;
for(j=i+1;j<=n;++j)
if(v[i]<v[j] && b[i]<b[j]+1)
{b[i]=b[j]+1;
pre[i]=j;
if(b[i]>max)
max=b[i];
p=i;}}
w<<max;
i=p;
while(i!=-1)
{w<<v[i];
i=pre[i];}
return 0;}