#include<bits/stdc++.h>
using namespace std;
int n,h[10005],dp[10005],way[10005],ed,now;
stack<int> stk;
bool node[1000000];
int main(){
cin>>n;
for(int i=1;i<=n;i++){
cin>>h[i];
dp[i]=1;
}
int maxi=dp[1],ansss,l=0;
for(int i=2;i<=n;i++){
for(int j=1;j<i;j++){
if(h[i]>h[j]){
l++;
if(l==1){
ansss=j;
}
if(dp[j]+1>dp[i]&&node[way[i]-ansss]!=true)
{
dp[i]=dp[j]+1;
way[i]=j;
node[way[i]-ansss]=true;
ansss=j;
}
}
}
}
for(int i=1;i<=n;i++){
if(dp[i]>maxi){
maxi=dp[i];
ed=i;
}
}
now=ed;
stk.push(h[now]);
while(way[now]>=1){
now=way[now];
stk.push(h[now]);
}
int minn=0,anss=0;
minn=stk.top();
while(stk.empty()==false){
anss=stk.top();
// cout<<anss<<" i"<<endl;
stk.pop();
}
if(anss-minn>0)
cout<<anss-minn;//<<' '<<anss<<' '<<minn
else
cout<<0;
return 0;
}
A一个