Текстовый файл состоит не более чем из
Для выполнения этого задания следует написать программу. Ниже приведён файл, который необходимо обработать с помощью данного алгоритма.
Приведём решение Николая Чуркина (Тимашевск) на языке Python.
f = open('24.txt').readline()
k = 1
m = 0
for i in range(len(f)-1):
if f[i] != f[i+1]:
k += 1
m = max(m, k)
else:
k = 1
print(m)
В результате работы данного алгоритма при вводе данных из файла в условии получаем ответ — 45.
Ответ: 45.
Примечание. Путь к файлу необходимо указать согласно расположению файла на Вашем компьютере.
Приведём решение Ильи Андрианова на языке Python.
s = open('zadanie24_2.txt').readline()
while 'DD' in s or 'RR' in s or 'LL' in s:
s = s.replace('DD', 'D D').replace('RR', 'R R').replace('LL', 'L L')
print(max([len(x) for x in s.split()]))
Приведём решение Ивана Новикова на языке Python.
a = open('zadanie24_2.txt').readline()
m = 0
x = 'LL RR DD'
for x1 in x.split():
while x1 in a:a = a.replace(x1 , f'{x[0]} {x[1]}')
for b in a.split():
m = max(len(b) , m)
print(m)
Приведём другое решение данной задачи на языке Pascal.
Для решения данной задачи будем посимвольно считывать текстовый файл. Объявим переменные: maxLen — максимальная длина последовательности, curLen — временное хранение длины последовательности, i — переменная для перебора всех символов, s — строка для работы с символами из файла. Алгоритм будет сравнивать значение текущего символа со значением предыдущего, и если символы будут удовлетворять нужным условиям, то значение счетчика будет увеличиваться
Приведём решение данной задачи на языке Pascal.
var maxLen, curLen, i: integer;
s: string;
begin
assign(input, '24.txt');
readln(s);
maxLen := 1;
curLen := 1;
for i:=2 to Length(s) do
if s[i] <> s[i-1] then begin
curLen := curLen + 1;
if curLen > maxLen then
maxLen := curLen;
end
else
curLen := 1;
writeln(maxLen);
end.

