Я получаю сообщение об ошибке в строке 43, т.е. в последней строке функции (оператор return). ошибка: недопустимое преобразование из 'int' в 'int *' [-fpermissive]
ошибка: слишком мало аргументов для функции 'int getSumUtil (int *, int, int, int, int, int) В основном эта функция является утилитой для расчета максимальной суммы элементов в массиве, содержащем целые числа от l до r, где l и r - диапазон запросов, заданный пользователем в каждом запросе
int getSumUtil(int *st, int ss, int se, int qs, int qe, int si)
{
// If segment of this node is a part of given range, then return
// the sum of the segment
if (qs <= ss && qe >= se)
return st[si];
// If segment of this node is outside the given range
if (se < qs || ss > qe)
return 0;
// If a part of this segment overlaps with the given range
int mid = getMid(ss, se);
return max(
getSumUtil((st, ss, mid, qs, qe, 2*si+1) + getSumUtil(st, mid+1, se, qs, qe, 2*si+2)) ,
getSumUtil(st, ss, mid, qs, qe, 2*si+1) ,
getSumUtil(st, mid+1, se, qs, qe, 2*si+2)
);
}