РУҚА
24

Решение: Максимальная подпоследовательность

ЕГЭ · Информатика · Задание 24 · Массивы и строки
ПовышеннаяФИПИC00CCBКороткий ответ≈ 10 минутРазбор в 4 шагаОтвет сверен с ключом
Условие

Текстовый файл состоит из символов $T$, $U$, $V$, $W$, $X$, $Y$ и $Z$. Определите в прилагаемом файле максимальное количество идущих подряд символов (длину непрерывной подпоследовательности), среди которых символ $W$ встречается не более 130 раз. Для выполнения этого задания следует написать программу.

Открыть задачу и решить самому
Дальше ответЕсли ещё решаете — начните с подсказок: они ведут к ответу, но не выдают его.
К подсказкам

Решение по шагам

4 шага
1

Задачу решаем одним проходом по строке с помощью двух границ окна. При добавлении очередного символа увеличиваем счётчик символов $W$, если добавлен именно $W$.

$$count_W \mathrel{+}= (s[r] = W)$$
2

Если в текущем окне оказалось более 130 символов $W$, сдвигаем левую границу вправо, уменьшая счётчик при удалении символа $W$.

$$count_W > 130 \Rightarrow l \mathrel{+}= 1$$
3

После восстановления ограничения вычисляем длину текущего окна и сравниваем её с найденным максимумом.

$$length = r - l + 1$$

При обработке приложенного файла максимальная длина допустимой непрерывной подпоследовательности равна 237.

$$max\_length = 237$$
Ответ
237
237
так ответ выглядит в бланке

Где здесь ошибаются

Искать только самый длинный фрагмент с ровно 130 символами $W$, хотя допускается не более 130.

Не сдвигать левую границу окна после превышения допустимого количества символов $W$.

Пересчитывать каждый фрагмент заново и получать медленный алгоритм.

Закрепить приёмВ теме «Массивы и строки» ещё 237 задач — с ответом и таким же разбором.
Тренироваться

Как решать задание 24 ЕГЭ, информатика

Разбор этой задачи разложен на 4 шага: видно, откуда берётся каждое число и где теряется балл. Ответ приведён рядом с выкладками, а не вместо них.

Задача из темы «Массивы и строки»: в ней 238 задач, и у каждой есть такой же разбор. Регистрация не нужна.