Задания
Версия для печати и копирования в MS Word
Задание 24 № 37131

Текстовый файл содержит только заглавные буквы латинского алфавита (ABC…Z). Определите наибольшую длину цепочки символов, среди которых нет символов K и L, стоящих рядом.

Например, в тексте ABCAABAKLD самая длинная цепочка символов, удовлетворяющая условию — ABCAABAK, её длина равна 8.

Для выполнения этого задания следует написать программу. Ниже приведён файл, который необходимо обработать с помощью данного алгоритма.

Задание 24

Спрятать решение

Решение.

Будем посимвольно считывать строку из файла. Сначала считаем первый символ строки. Далее в цикле будем считывать символы и проверять, встречается ли в текущей цепочке комбинация символов KL или LK. Если такая комбинация не встречается, увеличиваем счётчик k, если такая комбинация встречается — сбрасываем счётчик в значение 1.

 

Приведём решение данной задачи на языке Pascal.

var k, max: integer;

c1, c2: char;

f: text;

begin

assign(f,'C:\24.txt');

reset(f);

k := 1;

max := 0;

read(f, c1);

while not Eof(f) do begin

c2 := c1;

read(f, c1);

if ((c2 = 'K') and (c1 = 'L')) or ((c2 = 'L') and (c1 = 'K')) then begin

if k > max then

max := k;

k := 1;

end

else

k := k + 1;

end;

if k > max then

max := k;

writeln(max);

end.

 

В результате работы данных алгоритмов при вводе данных из файла в условии получаем ответ — 2796.

 

Ответ: 2796.

 

Примечание. Путь к файлу необходимо указать согласно расположению файла на Вашем компьютере.

Источник: ЕГЭ — 2021 по информатике. Основная волна 24.06.2021, разные задачи
Раздел кодификатора ФИПИ: 1.5.2 Цепочки, деревья, списки, графы, матрицы, псевдослучайные последовательности, 1.7.2 Основные конструкции языка программирования. Система программирования