Cod sursa(job #1345256)

Utilizator noname23Ionescu Marius noname23 Data 17 februarie 2015 14:36:14
Problema Subsir crescator maximal Scor 0
Compilator c Status done
Runda Arhiva educationala Marime 0.53 kb
#include<stdio.h>
int main()
{int i,j,v[100],ma[100],ur[100],mx=0,n,k;
    FILE  *f,*g;
    f=fopen("scmax.in","rt");
    g=fopen("scmax.out","wt");
    fscanf(f,"%d",&n);
    for(i=0;i<n;i++) fscanf(f,"%d",&v[i]);
    ma[n-1]=1;
    ur[n-1]=-1;
    for(i=n-2;i>=0;i--) {ma[i]=0;
    ur[i]=-1;
    for(j=i+1;j<n;j++) if(v[i]<v[j] && ma[j]>ma[i]) {ma[i]=ma[j]+1; ur[i]=j;
    if(ma[i]>mx) {mx=ma[i];k=i;} }
    }
    fprintf(g,"%d\n",mx);

     while(k!=(-1))
    {
        fprintf(g,"%d ",v[k]);
        k=ur[k];
    }
}