#include <iostream>
#include <vector>
using namespace std;
template <typename T>
T MaxSequence(const vector<T> &data)
{
T maxResult=0,maxCur=0;
for(vector<T>::const_iterator it = data.begin();it != data.end();it++)
{
maxCur += *it;
if(maxCur > maxResult)
maxResult = maxCur;
else if(maxCur < 0)
maxCur = 0;
}
return maxResult;
}
int main()
{
int n,tmp;
vector<int> buf;
cin>>n;
for(int i =0;i<n;i++)
{
cin>>tmp;
buf.insert(buf.begin(),tmp);
}
cout<<MaxSequence(buf)<<endl;
return 1;
}
#include <vector>
using namespace std;
template <typename T>
T MaxSequence(const vector<T> &data)
{
T maxResult=0,maxCur=0;
for(vector<T>::const_iterator it = data.begin();it != data.end();it++)
{
maxCur += *it;
if(maxCur > maxResult)
maxResult = maxCur;
else if(maxCur < 0)
maxCur = 0;
}
return maxResult;
}
int main()
{
int n,tmp;
vector<int> buf;
cin>>n;
for(int i =0;i<n;i++)
{
cin>>tmp;
buf.insert(buf.begin(),tmp);
}
cout<<MaxSequence(buf)<<endl;
return 1;
}