Cod sursa(job #583915)

Utilizator david95szabo david emanuel david95 Data 23 aprilie 2011 12:25:22
Problema Secv Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.12 kb
#include <fstream>
#include <cstring>
using namespace std;
ifstream fin("secv.in");
ofstream fout("secv.out");
#define DIM 100001
 
int L[DIM], ANT[DIM], SOL[DIM];
 
int n, a[DIM];
int main()
{
    int smax = -1, i, j, poz, k, max=-77, min=999, e, d, m;
    fin >> n;
    for ( i = 1; i <= n; ++i )
        fin >> a[i];
	for ( i = 1; i <= n; ++i ) 
		ANT[i] = -1;
    for ( i = 1; i <= n; ++i )
    {
        L[i] = 1;
        for ( j = 1; j <= i; ++j )
            if ( L[j] + 1 > L[i] && a[i] > a[j] )
                {
					L[i] = L[j] + 1;
					ANT[i] = j;
					if ( a[j] < min )
					{
						min = a[j];
						d = j;
					}
					if ( a[j] > max )
						{
							max = a[j];
							e = j;
						}
				}
    }
    for ( i = 1; i <= n; ++i )
        if ( smax < L[i]  )
            { 
				smax = L[i];
				poz = i;
			}

	for ( i = d; i <= e; i++ )
			m = e;
	fout  << m;
	/*i = poz;
	k = 0;
	while ( ANT[i] != -1 )
	{
		SOL[k] = a[i];
		k++;
		i = ANT[i];
	}
	SOL[k] = a[i];
	for ( i = k; i >= 0; i-- ) 
		fout << SOL[i] << " ";
	*/
	fin.close();
    fout.close();
    return 0;
}