РУҚА
ЕГЭ · информатика · номер 24 · решения с ответами

Задание 24 ЕГЭ по информатике: решения ФИПИ с ответами по шагам

Все задачи задания 24 из открытого банка ФИПИ с готовым ответом и началом разбора. Полное решение по шагам и официальный ключ — по ссылкам в карточке.

Задания без решений
80
решений с ответами
6
тем в номере
4
страниц списка
41ФИПИ 88B226№ 24ПовышеннаяМассивы и строки

Максимальная цепочка пар BC

Текстовый файл состоит из заглавных букв латинского алфавита $A$, $B$, $C$, $D$, $E$ и $F$. Определите в прилагаемом файле максимальное количество идущих подряд символов, среди которых пара символов…

  1. 1
    Считаем количество вхождений подстроки $BC$ в каждом рассматриваемом непрерывном фрагменте файла. Вхождения могут начинаться на соседних позициях, поэтому проверяем каждую пару соседних символов.$$s[i] = B \text{ и } s[i+1] = C$$
  2. 2
    Для каждой левой границы фрагмента постепенно сдвигаем правую границу вправо, поддерживая число найденных пар $BC$. Если число стало равно 190, обновляем максимальную длину.

Ещё 1 шаг — в полном решении

Решение полностьюОтветРешать самому3 шага в разборе
42ФИПИ 896732№ 24ПовышеннаяМассивы и строки

Максимальный фрагмент без подстроки

Текстовый файл состоит не более чем из 1 200 000 символов $X$, $Y$ и $Z$. Определите максимальное количество идущих подряд символов, среди которых нет подстроки $XZZY$. Для выполнения этого задания…

  1. 1
    Считываем всю строку из файла и ищем все вхождения подстроки $XZZY$. Удобно использовать метод поиска подстроки или алгоритм КМП.
  2. 2
    Для каждой найденной позиции начала запрещённой подстроки вычисляем длину участка от конца предыдущей запрещённой подстроки до её начала.

Ещё 2 шага — в полном решении

Решение полностьюОтветРешать самому4 шага в разборе
43ФИПИ 89F10E№ 24ВысокаяАлгоритмы и исполнители

Исправление программы поиска цифры

На обработку поступает натуральное число, не превышающее $10^9$. Нужно написать программу, которая выводит на экран максимальную цифру числа, кратную 5. Если в числе нет цифр, кратных 5, требуется…

  1. 1
    При вводе числа 132 программа сначала выполняет присваивание maxDigit = N % 10, поэтому maxDigit получает значение 2.
  2. 2
    Затем программа последовательно рассматривает цифры 2, 3 и 1. Ни одна из них не делится на 5, поэтому значение maxDigit не изменяется.

Ещё 6 шагов — в полном решении

Решение полностьюОтветРешать самому8 шагов в разборе
44ФИПИ 8A991E№ 24ПовышеннаяМассивы и строки

Максимум пар гласная-согласная

Задание выполняется с использованием прилагаемых файлов. Текстовый файл состоит из символов A, C, D, F и O. Определите максимальное количество идущих подряд пар символов вида «гласная + согласная» в…

  1. 1
    Из символов файла гласной является O, а согласными являются A, C, D и F.
  2. 2
    Последовательно проверяем все пары соседних символов. Пара считается подходящей, если её первый символ равен O, а второй принадлежит множеству A, C, D, F.

Ещё 1 шаг — в полном решении

Решение полностьюОтветРешать самому3 шага в разборе
45ФИПИ 8D5EEF№ 24ПовышеннаяОсновы программирования

Исправление решения линейного уравнения

Требовалось написать программу, которая решает уравнение $ax+b=0$ относительно $x$ для любых действительных чисел $a$ и $b$, введённых с клавиатуры. Программист написал программу неправильно. Во…

  1. 1
    Возьмём $a=0$, $b=0$, например $x=1$. Тогда исходное уравнение имеет вид $0x+0=0$ и верно при любом действительном $x$, то есть имеет бесконечно много решений. Программа же попадает в первую ветвь и сообщает только $x=0$, поэтому решение…
  2. 2
    Переменная $x$ во вводе является лишней: её значение не используется для решения уравнения. Также лишним является отдельное присваивание результата в ветви $b=0$ как особого случая: при $a\ne0$ значение $x=-b/a$ и так равно нулю.

Ещё 2 шага — в полном решении

Решение полностьюОтветРешать самому4 шага в разборе
46ФИПИ 8FCDC3№ 24ПовышеннаяОсновы программирования

Исправление программы обработки чисел

На обработку поступает последовательность из четырёх неотрицательных целых чисел (некоторые числа могут быть одинаковыми). Нужно написать программу, которая выводит на экран количество делящихся…

  1. 1
    Из чисел 20, 93, 40, 39 нацело на 4 делятся 20 и 40. Поэтому count получает значение 2. Однако программа прибавляет к sum порядковые номера этих чисел: 1 и 3.$$sum = 1 + 3 = 4$$
  2. 2
    Так как проверяется условие n > 0, а n равно 4, программа выводит две строки: сначала количество найденных чисел, затем ошибочную сумму.

Ещё 3 шага — в полном решении

Решение полностьюОтветРешать самому5 шагов в разборе
47ФИПИ 907644№ 24ПовышеннаяМассивы и строки

Максимальная цепочка пар

Текстовый файл состоит из символов $A$, $B$ и $C$. Определите максимальное количество идущих подряд пар символов $CA$ или $CB$ в прилагаемом файле. Искомая подпоследовательность должна состоять…

  1. 1
    Файл последовательно просматривается слева направо. На каждой позиции проверяется пара из двух символов.
  2. 2
    Если пара имеет вид $CA$ или $CB$, она добавляется к текущей цепочке подходящих пар. После этого текущая позиция смещается на два символа.

Ещё 2 шага — в полном решении

Решение полностьюОтветРешать самому4 шага в разборе
48ФИПИ 931D9C№ 24ВысокаяФайлы и документы

Максимальное число в файле

Текстовый файл состоит из десятичных цифр и заглавных букв латинского алфавита. Определите в этом файле последовательность идущих подряд символов, представляющих собой запись максимального чётного…

  1. 1
    В записи 14-ричного числа допустимы символы 0–9 и A–D. Поэтому файл нужно просмотреть слева направо и выделить максимальные непрерывные фрагменты, состоящие только из этих символов.
  2. 2
    Из выделенных фрагментов оставляем только те, последняя цифра которых чётная: 0, 2, 4, 6, 8, A или C.

Ещё 2 шага — в полном решении

Решение полностьюОтветРешать самому4 шага в разборе
49ФИПИ 93AD6B№ 24ВысокаяОсновы программирования

Исправление программы обработки чисел

На обработку поступает последовательность из четырёх неотрицательных целых чисел (некоторые числа могут быть одинаковыми). Нужно написать программу, которая выводит на экран количество всех чисел…

  1. 1
    Из чисел 20, 25, 40, 45 условию делимости на 10 соответствуют 20 и 40. Поэтому правильные количество и сумма равны 2 и 60.
  2. 2
    В данной программе при обработке числа 20 переменная sum получает значение 20. При обработке числа 40 она получает значение 40 вместо добавления 40 к прежней сумме. Поэтому после цикла count = 2, sum = 40.

Ещё 5 шагов — в полном решении

Решение полностьюОтветРешать самому7 шагов в разборе
50ФИПИ 95321D№ 24ВысокаяСистемы счисления

Поиск ошибок в программе

На обработку поступает натуральное число, не превышающее $10^9$. Нужно написать программу, которая выводит на экран минимальную чётную цифру числа. Если в числе нет чётных цифр, требуется вывести на…

  1. 1
    При вводе 231 начальное значение minDigit равно последней цифре числа: 1. Затем программа рассматривает цифры 1, 3 и 2. Только цифра 2 является чётной, поэтому minDigit становится равным 2.$$231 \to 1,\ 3,\ 2$$
  2. 2
    После завершения цикла значение minDigit равно 2, поэтому программа выводит число 2.$$2$$

Ещё 4 шага — в полном решении

Решение полностьюОтветРешать самому6 шагов в разборе
51ФИПИ 98C518№ 24ПовышеннаяМассивы и строки

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

Текстовый файл состоит не более чем из 1 200 000 символов $A$, $B$, $C$ и $D$. Определите максимальное количество идущих подряд символов, среди которых нет символов $A$ и $D$, стоящих рядом. Для…

  1. 1
    Последовательно просматриваем все символы файла, запоминая предыдущий символ.
  2. 2
    Если текущий и предыдущий символы образуют пару $AD$ или $DA$, участок допустимых символов заканчивается перед текущим символом. Текущая длина устанавливается равной 1.

Ещё 2 шага — в полном решении

Решение полностьюОтветРешать самому4 шага в разборе
52ФИПИ 9D0AA0№ 24ВысокаяОсновы программирования

Исправление программы обработки цифр

На обработку поступает натуральное число, не превышающее $10^9$. Нужно написать программу, которая выводит на экран максимальную чётную цифру этого числа. Если в числе нет чётных цифр, требуется…

  1. 1
    При вводе числа 243 сначала выполняется присваивание maxDigit = 243 % 10, поэтому maxDigit получает значение 3.
  2. 2
    Затем программа рассматривает цифры 3, 4 и 2. Для цифры 4 условие digit > maxDigit выполняется, но из-за ошибки присваивается digit = maxDigit. Значение maxDigit не изменяется и остаётся равным 3.

Ещё 4 шага — в полном решении

Решение полностьюОтветРешать самому6 шагов в разборе
53ФИПИ A35DD6№ 24ПовышеннаяОсновы программирования

Исправление программы подсчёта нечётных

На обработку поступает последовательность из четырёх неотрицательных целых чисел (некоторые числа могут быть одинаковыми). Нужно написать программу, которая выводит на экран количество нечётных…

  1. 1
    В последовательности 20 33 40 55 нечётными являются числа 33 и 55. Поэтому переменная count получает значение 2.
  2. 2
    Из-за строки `sum = x` значение переменной sum каждый раз заменяется очередным нечётным числом. После обработки всей последовательности в ней остаётся 55.

Ещё 4 шага — в полном решении

Решение полностьюОтветРешать самому6 шагов в разборе
54ФИПИ A520F8№ 24ПовышеннаяМассивы и строки

Максимальная цепочка символов

Текстовый файл состоит не более чем из 1 200 000 символов $A$, $B$, $C$ и $D$. Определите максимальное количество идущих подряд символов, среди которых нет символов $B$ и $D$, стоящих рядом. Для…

  1. 1
    Нужно найти самый длинный непрерывный фрагмент, в котором нигде не встречается соседняя пара $BD$ или $DB$.
  2. 2
    Файл просматривают однократно. Для каждой пары соседних символов проверяют, являются ли они $B$ и $D$ в любом порядке. Если да, текущая длина фрагмента сбрасывается до 1; иначе она увеличивается на 1.$$p_i=B\land p_{i+1}=D\quad\text{или}\quad p_i=D\land p_{i+1}=B$$

Ещё 1 шаг — в полном решении

Решение полностьюОтветРешать самому3 шага в разборе
55ФИПИ A9D03C№ 24ПовышеннаяМассивы и строки

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

Текстовый файл состоит из символов, обозначающих прописные буквы латинского алфавита. Определите максимальное количество идущих подряд символов, среди которых никакие две буквы из набора букв $A$…

  1. 1
    Обозначим множество запрещённых для соседства букв: $S = \{A, B, C\}$. Нарушение возникает только тогда, когда и текущий, и предыдущий символы принадлежат $S$.$$s_{i-1} \in S \land s_i \in S$$
  2. 2
    Выполняем однократный просмотр файла. Если найдено нарушение, длина текущего фрагмента становится равной 1. В противном случае она увеличивается на 1. Одновременно сохраняем наибольшее значение.

Ещё 1 шаг — в полном решении

Решение полностьюОтветРешать самому3 шага в разборе
56ФИПИ AA7E8A№ 24ПовышеннаяМассивы и строки

Максимальная последовательность без PP

Задание выполняется с использованием прилагаемых к заданию файлов. Текстовый файл состоит не более чем из 1 200 000 символов P, Q, R и S. Определите максимальное количество идущих подряд символов…

  1. 1
    Последовательность допустима, пока в ней не встречается пара соседних символов $P$. Поэтому строку достаточно просмотреть один раз.
  2. 2
    При обнаружении соседних символов $P$ текущая длина последовательности сбрасывается. В остальных случаях она увеличивается на единицу; после каждого шага сохраняется наибольшее значение.

Ещё 1 шаг — в полном решении

Решение полностьюОтветРешать самому3 шага в разборе
57ФИПИ ACDF4D№ 24ПовышеннаяМассивы и строки

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

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

  1. 1
    Считываем содержимое файла и рассматриваем его как строку. Будем хранить левую границу текущего фрагмента, число символов $T$ в нём и максимальную найденную длину.
  2. 2
    Двигаем правую границу по строке. Если очередной символ равен $T$, увеличиваем счётчик. Если количество символов $T$ стало больше 100, сдвигаем левую границу вправо, уменьшая счётчик при удалении символа $T$.

Ещё 1 шаг — в полном решении

Решение полностьюОтветРешать самому3 шага в разборе
58ФИПИ AF72FD№ 24ВысокаяМассивы и строки

Максимальное арифметическое выражение

Задание выполняется с использованием прилагаемого файла. Текстовый файл состоит из цифр 0, 6, 7, 8, 9 и знаков арифметических операций «−» и «*» (вычитание и умножение). Определите максимальное…

  1. 1
    Разбираем файл на непрерывные фрагменты, состоящие из цифр 0, 6, 7, 8, 9 и знаков «−», «*».
  2. 2
    Для каждого фрагмента проверяем структуру арифметического выражения: оно начинается и заканчивается числом, знаки операций не стоят рядом, а числа не содержат ведущих нулей; отдельное число 0 записывается только как «0».

Ещё 1 шаг — в полном решении

Решение полностьюОтветРешать самому3 шага в разборе
59ФИПИ B31CB5№ 24ПовышеннаяМассивы и строки

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

Текстовый файл состоит не более чем из 1 200 000 символов K, L, M и N. Определите максимальное количество идущих подряд символов, среди которых нет символов K и M, стоящих рядом. Для выполнения…

  1. 1
    Последовательно просматриваем символы файла, храня предыдущий символ и длину текущей последовательности.
  2. 2
    Если текущий и предыдущий символы образуют пару KM или MK, текущую длину устанавливаем равной 1; иначе увеличиваем её на 1.

Ещё 2 шага — в полном решении

Решение полностьюОтветРешать самому4 шага в разборе
60ФИПИ B92F00№ 24ПовышеннаяМассивы и строки

Максимальная разрешённая последовательность

Задание выполняется с использованием прилагаемых к заданию файлов. Текстовый файл состоит не более чем из 1 200 000 символов $A$, $B$, $C$ и $D$. Определите максимальное количество идущих подряд…

  1. 1
    Условие нарушается только в том случае, если рядом стоят символы $A$ и $B$ в любом порядке: $AB$ или $BA$.
  2. 2
    Просматриваем файл слева направо. Для каждого символа сравниваем его с предыдущим. Если образовалась запрещённая пара, текущую длину последовательности начинаем заново.

Ещё 2 шага — в полном решении

Решение полностьюОтветРешать самому4 шага в разборе