kadane's algorithm
#include <bits/stdc++.h>
using namespace std;
int main()
{
int n;
cin>>n;
int a[n], i;
for(i=0; i<n; i++)
cin>>a[i];
int currentsum=0, maxsum=INT_MIN;
for(i=0; i<n; i++)
{
currentsum+=a[i];
if(currentsum<0)
{
currentsum=0;
}
maxsum = max( maxsum , currentsum);
}
cout << maxsum;
return 0;
}