int Sub_array_sum[ ], a[ ], i, n, m, sum=0;
for(i=0; i<n: i++)
{
sum = sum + a[i];
if(sum<0)
Sub_array_sum[ ] = sum;
else
sum = 0;
}
int max_sub_array_sum = Sub_array_sum[0];
for(i=1; i<m; i++)
{
if(max_sub_array_sum < Sub_array_sum[i])
max_sub_array_sum = Sub_array_sum[i];
}
Return max_sub_array_sum;
for the given problem A = [−5, −10, 6, 3, −1, −2, 13, 4, −9, −1, 4, 12, −3, 0]
we, get
Sub_array_sum[ ] ={ 6, 9, 8, 6, 19, 23, 14, 13, 17, 29, 26, 26 }
and from there,
max_sub_array_sum = 29