#include <stdio.h>
int max_subseq_sum (const int *a, const int size, int *start, int *end)
{
int sum = 0;
int max_sum = -127;
int i;
int new_start = 0;
for (i=0; i<size; ++i) {
sum += a[i];
if (sum > max_sum) {
max_sum = sum;
(*start) = new_start;
(*end) = i;
}
if (sum < 0) {
sum = 0;
new_start = i+1;
}
}
return max_sum;
}
int main()
{
int a[5]={2,-1,8,-5,3};
printf("%d\n",max_subseq_sum(a,5));
}