#include<bits/stdc++.h>
using namespace std;
int n,a[10000],c;
void dp(int i,int num,int h){
if(i>n) return;
c=max(c,num);
for(int k=i+1;i<n;k++){
if(a[k]<h) dp(k,num+i,a[k]);
else dp(k,num+i,h);
}
}
int main(){
cin>>n;
for(int i=1;i<=n;i++){
cin>>a[i];
}
for(int i=1;i<=n;i++){
dp(i,1,a[i]);
}
cout<<c;
return 0;
}
/**************************************************************
Problem: 1795
User: zhuangsongyu
Language: C++
Result: Runtime Error
****************************************************************/