РУҚА
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 задач, и у каждой есть такой же разбор. Тіркеу қажет емес.