Cod sursa(job #802398)
Utilizator | Data | 26 octombrie 2012 16:56:54 | |
---|---|---|---|
Problema | Subsir crescator maximal | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.45 kb |
#include <fstream>
using namespace std;
ifstream f("scmax.in");
ofstream g("scmax.out");
int a[100010],n,i,L[100010],j,maxi,maxL;
int main()
{
f >> n;
for(i=1;i<=n;i++)
f >> a[i];
L[1]=1;
for(i=2;i<=n;i++)
{
maxi=0;
for(j=i-1;j>=1;j--)
if(a[j]<=a[i] && maxi<L[j])
maxi=L[j];
L[i]=maxi+1;
}
maxL=0;
for(i=1;i<=n;i++)
if(maxL<L[i])
maxL=L[i];
g << maxL-1 << '\n';
f.close();
g.close();
return 0;
}