Учитывая массив целых положительных чисел, значения которого приведены в [1, 8], я хочу найти начальные индексы смежных подпоследовательностей длины L, сумма которых равна S. Этот запрос можно обозначить как Q . Пример приведен ниже:
A: [3, 2, 3, 1, 2, 1, 3, 1, 1, 6, 3, 3, 3, 2, 3, 1, 1, 3]
Q< 3, 5 > : [5, 6, 14, 15] ;
Starting at index 5: {1, 3, 1},
Starting at index 6: {3, 1, 1},
Starting at index 14: {3, 1, 1},
Starting at index 15: {1, 1, 3}
Q< 4, 9 > : [0, 12] ;
Starting at index 0: {3, 2, 3, 1},
Starting at index 12: {3, 2, 3, 1}
Результат запроса может быть вычислен тривиально за O (n) раз. Есть ли способ найти эти индексы за O (1) или O (log n), предварительно обработав массив? Пространственная сложность структуры данных предварительно обработанного массива предпочтительно не должна превышать O (n).