Cod sursa(job #782134)

Utilizator alexarnautuArnautu Alexandru alexarnautu Data 25 august 2012 23:20:04
Problema Subsir crescator maximal Scor 35
Compilator cpp Status done
Runda Arhiva educationala Marime 0.75 kb
#include <cstdio>

using namespace std;

FILE * iFile;
FILE * oFile;

int a[10010], sol[10010], pre[10010], n;

void read()
{
    fscanf(iFile, "%d", &n);

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

void solve()
{
    int max, i, j;

    sol[1] = 1;
    for(i=2;i<=n;i++)
    {
        max = 0;
        for(j=1;j<i;j++)
        {
            if(a[i] > a[j] && max < sol[j])
                max = sol[j], pre[i] = j;
        }
        sol[i] = 1 + max;
    }
    max = 0;
    for(i=1;i<=n;i++)
        if(max < sol[i])
            max = sol[i];
    fprintf(oFile, "%d", max);
}

int main()
{
    iFile = fopen("scmax.in", "r");
    oFile = fopen("scmax.out", "w");

    read();
    solve();

    fclose(iFile);
    fclose(oFile);

    return 0;
}