Решение: Максимальная подпоследовательность с X
Текстовый файл состоит из символов $T$, $U$, $V$, $W$, $X$, $Y$ и $Z$. Определите в прилагаемом файле максимальное количество идущих подряд символов (длину непрерывной подпоследовательности), среди которых символ $X$ встречается не более 140 раз. Для выполнения этого задания следует написать программу.
Решение по шагам
3 шагаПоследовательно просматриваем символы файла, поддерживая текущее окно непрерывной подпоследовательности и количество символов $X$ в нём.
$$count_X \leq 140$$Если при добавлении очередного символа количество $X$ становится больше 140, сдвигаем левую границу окна, пока условие снова не выполнится.
После каждого шага сравниваем длину допустимого окна с текущим максимумом. Наибольшая найденная длина равна 211.
Где здесь ошибаются
Подсчитывают количество символов $X$ во всём файле вместо каждой непрерывной подпоследовательности.
Ищут фрагмент, содержащий ровно 140 символов $X$, хотя требуется не более 140.
После превышения лимита сдвигают только правую границу и не уменьшают текущее окно.