Cod sursa(job #1104338)

Utilizator mihail95Mihail Plesa mihail95 Data 10 februarie 2014 18:26:08
Problema Subsir crescator maximal Scor 5
Compilator cpp Status done
Runda Arhiva educationala Marime 1.17 kb
#include<cstdio>
#include<string.h>
#include<cstdlib>
using namespace std;
int poz[100002],n,maxim=0,pozitie;
int a[100001],L[100001],b[100001],s;
FILE *f,*g;
void init()
{
    L[n]=1;
    poz[n]=-1;
    s=1;

}
void citire()
{
    f=fopen("scmax.in","r");
    g=fopen("scmax.out","w");
    int i;
    fscanf(f,"%d",&n);

    for(i=1; i<=n; i++)
        fscanf(f,"%d",&a[i]);

}
void scmax()
{
    int i,j,max,ok,k;
    b[1]=a[n];

    for(i=n-1; i>=1; i--)
    {
        ok=1;
        for(j=1; j<=s && ok==1; j++)
        {
            if(a[i]<b[j])
            {
                ok=0;
                for(k=s; k>=1; k--)
                {
                    b[k+1]=b[k];
                    L[k+1]=L[k];
                }
                s++;
                b[j]=a[i];
                L[j]=L[j+1]+1;

                if(maxim<L[j])
                    maxim=L[j];

            }
        }

    }


}
void afis()
{
    fprintf(g,"%d\n",maxim+1);

    /*while(pozitie!=-1)
    {

        fprintf(g,"%d ",a[pozitie]);
        pozitie=poz[pozitie];
    }*/

}
int main()
{
    citire();
    init();
    scmax();
    afis();
}