Все мы слышали о прекрасной задаче Бентли о жемчужинах программирования, которая решает максимальную сумму подпоследовательности:
maxsofar = 0;
maxcur = 0;
for (i = 0; i < n; i++) {
maxcur = max(A[i] + maxcur, 0);
maxsofar = max(maxsofar, maxcur);
}
Что, если мы добавим дополнительное условие максимальной подпоследовательности, которая меньше M?