Pagini recente » Cod sursa (job #1374728) | Cod sursa (job #904177)
Cod sursa(job #904177)
#include <stdio.h>
FILE *f,*s;
int n,i,j,k,max;
int v1[100005],v2[100005],v3[100005],v4[100005];
int main()
{
f=fopen("scmax.in","r");
s=fopen("scmax.out","w");
fscanf(f,"%d",&n);
for(i=1;i<=n;i++)
fscanf(f,"%d",&v1[i]);
for(i=1;i<=n;i++)
{
v2[i]=1;
v3[i]=-1;
for(j=1;j<=i-1;j++)
{
if(v1[j]<v1[i] && v2[j]+1>v2[i])
{
v2[i]=v2[j]+1;
v3[i]=j;
}
}
if(v2[max]<v2[i])
max=i;
}
fprintf(s,"%d\n",v2[max]);
k=max;
while(k!=-1)
{
v4[++v4[0]]=v1[k];
k=v3[k];
}
for(i=v4[0];i>=1;i--)
fprintf(s,"%d ",v4[i]);
fclose(s);
return 0;
}