|
|||
Приведём решение данной задачи на языке Pascal.Решение. Для решения данной задачи будем посимвольно считывать текстовый файл. Объявим переменные: maxLen — максимальная длина последовательности, curLen — временное хранение длины последовательности, i — переменная для перебора всех символов, s — строка для работы с символами из файла. Алгоритм будет сравнивать значение текущего символа со значением предыдущего и, если символы не будут различаться и будут являться буквой X, то значение счетчика будет увеличиваться на 1.
Приведём решение данной задачи на языке 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]) and (s[i] = 'X') then begin curLen := curLen + 1; if curLen > maxLen then maxLen := curLen; end else curLen := 1; writeln(maxLen); end.
В результате работы данного алгоритма при вводе данных из файла в условии получаем ответ — 19.
Ответ: 19.
3. Текстовый файл состоит не более чем из 106 символов X, Y и Z. Определите длину самой длинной последовательности, состоящей из символов Y. Хотя бы один символ Y находится в последовательности. Для выполнения этого задания следует написать программу. Ниже приведён файл, который необходимо обработать с помощью данного алгоритма. Файл 24.txt
4. Текстовый файл состоит не более чем из 106 символов X, Y и Z. Определите длину самой длинной последовательности, состоящей из символов Z. Хотя бы один символ Z находится в последовательности. Для выполнения этого задания следует написать программу. Ниже приведён файл, который необходимо обработать с помощью данного алгоритма. Файл 24.txt
5. Текстовый файл состоит не более чем из 106 символов X, Y и Z. Определите максимальную длину цепочки вида XYZXYZXYZ... (составленной из фрагментов XYZ, последний фрагмент может быть неполным). Для выполнения этого задания следует написать программу. Ниже приведён файл, который необходимо обработать с помощью данного алгоритма. Файл 24.txt
|
|||
|