Cod sursa(job #893328)
Utilizator | Data | 26 februarie 2013 14:59:34 | |
---|---|---|---|
Problema | Subsir crescator maximal | Scor | 35 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.57 kb |
#include <fstream>
#include <algorithm>
using namespace std;
int v[100005], d[100005], n, m;
//6
//v = 1 5 2 4 9 0
//d = 1 2 2 3 4 1
int main ()
{
ifstream fin ("scmax.in");
fin >> n;
for (int i = 1; i <= n; ++i)
{
fin >> v[i];
d[i] = 1;
for (int j = 1; j < i; ++j)
if (d[j] + 1 > d[i] && v[i] > v[j])
{
d[i] = d[j] + 1;
m = max (m, d[i]);
}
}
ofstream fout ("scmax.out");
fout << m << "\n";
fout.close ();
return 0;
}