Предположим, у вас есть упорядоченный, проиндексированный список положительных значений. Эти положительные значения прерываются на 0 значений. Я хочу определить, существует ли последовательный подмассив, который не прерывается 0 значениями и сумма которого превышает определенный порог.
Простой пример:
Index, Value
0 0
1 0
2 3
3 4
4 2
5 6
6 0
7 0
8 0
9 2
10 3
11 0
В приведенном выше примере самый большой последовательный подмассив, не прерываемый 0, находится в диапазоне от индекса 2
до индекса 5
включительно, и сумма этого подмассива составляет 15
.
Таким образом, для следующих пороговых значений 20
, 10
и 4
, результаты должны быть FALSE
, TRUE
и TRUE
соответственно.
Примечание. Не обязательно находить самый большой подмассив, у меня есть только чтобы узнать, превышает ли любая сумма непрерывных подмассива установленный порог.
Я подозреваю, что эта проблема является вариацией алгоритма Кадане, но я не могу понять, как его настроить.
Дополнительным осложнением является то, что мне нужно выполнить этот анализ в Excel или Google Sheets, и я не могу использовать для этого скрипты - только встроенные формулы.
Я не уверен, что это вообще возможно, но я был бы благодарен за т любой вход.