#include <stdio.h>
void find_sub_array(int arr[], int len, int sum, int *start, int *end) {
int current_sum = 0;
for (int i = 0; i < len; i++) {
current_sum = arr[i];
for (int j = i + 1; j <= len; j++) {
if (current_sum == sum) {
*start = i;
*end = j - 1;
return;
}
if (current_sum > sum || j == len)
break;
current_sum += arr[j];
}
}
}
int main()
{
int arr[] = {6, 1, 4, -1, 5, -1, 2};
int len = sizeof(arr)/sizeof(arr[0]);
int sum = 9, start = 0, end = 0;
find_sub_array(arr, len, sum, &start , &end);
printf("from index %d to %d\n", start, end);
return 0;
}
/*
run:
from index 1 to 4
*/