Cod sursa(job #229143)
Utilizator | lupulescu serban serbanlupu | Data | 9 decembrie 2008 14:47:43 |
---|---|---|---|
Problema | Subsir crescator maximal | Scor | 35 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.51 kb |
//determinarea celui mai lung subsir dintr-un vector
#include<iostream>
#include<fstream.h>
ifstream f("scmax.in");
ofstream g("scmax.out");
using namespace std;
int main()
{
int v[100000];
int dp[100000];
int n,i,j;
//citesc
f>>n;
for (i=1;i<=n;++i)
f>>v[i];
//max
int max=0;
//incepe algoritmu`
for (i=1;i<=n;++i)
{
dp[i]=1;
for (j=1;j<=i-1;++j)
if (v[i]>v[j] && dp[i]<dp[j]+1)
dp[i]=dp[j]+1;
if (dp[max] < dp[i])
max=i;
}
g<<dp[max];
return 0;
}