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

Информатика ЕГЭ — решения заданий ФИПИ с ответами

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

Задания без решений
2 435
решений с ответами
14
тем в предмете
27
номеров бланка
122
страниц списка
2161ФИПИ 5399FA№ 25ПовышеннаяТеория чисел

Числовая маска и делимость

Назовём маской числа последовательность цифр, в которой символ «?» означает ровно одну произвольную цифру, а символ «*» — любую последовательность цифр произвольной длины, включая пустую. Например…

  1. 1
    При пустой последовательности вместо «*» получаем число $123467$. Оно не делится на 19.
  2. 2
    При одной цифре вместо «*» число имеет вид $1234067+100x$, где $0\leq x\leq9$. По модулю 19: $1234067\equiv17$, $100\equiv5$, поэтому $17+5x\equiv0\pmod{19}$. Отсюда $x=8$, получаем число $1234867$.

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

Решение полностьюОтветРешать самому4 шага в разборе
2162ФИПИ 53B650№ 25ВысокаяТеория чисел

Поиск простых множителей

Напишите программу, которая перебирает целые числа, большие 1 481 011, в порядке возрастания и ищет среди них представленные в виде произведения ровно двух простых множителей, не обязательно…

  1. 1
    Перебираем простые числа и оставляем только те, в десятичной записи которых ровно одна цифра 7.
  2. 2
    Проверяем произведения пар подходящих простых множителей, начиная с чисел, больших 1 481 011.$$1117 \cdot 1327 = 1482259$$

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

Решение полностьюОтветРешать самому3 шага в разборе
2163ФИПИ 541877№ 25ПовышеннаяАлгоритмы и исполнители

Обработка массива из 30 элементов

Дан целочисленный массив из 30 элементов. Элементы массива могут принимать натуральные значения от 1 до 10 000 включительно. Опишите на одном из языков программирования алгоритм, который находит…

  1. 1
    Сначала просматриваем все элементы массива и подсчитываем те, которые не меньше 1500 и являются чётными.$$a[i] \ge 1500 \land a[i] \bmod 2 = 0$$
  2. 2
    После завершения подсчёта повторно просматриваем массив. Каждый подходящий элемент заменяем найденным количеством $k$.

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

Решение полностьюОтветРешать самому3 шага в разборе
2164ФИПИ 55A68F№ 25ВысокаяТеория чисел

Числа по маске и делимость

Назовём маской числа последовательность цифр, в которой также могут встречаться следующие символы: символ «?» означает ровно одну произвольную цифру; символ «*» означает любую последовательность…

  1. 1
    Число с маской 1*23?9 имеет вид $A \cdot 10000 + 2309 + 10d$, где $d$ — последняя неизвестная цифра, а $A$ начинается с цифры 1.
  2. 2
    Так как число не превышает $10^8$, длина последовательности вместо «*» может быть от 0 до 3 цифр. Для каждого варианта перебираем $d$ от 0 до 9 и проверяем делимость на 2023.

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

Решение полностьюОтветРешать самому5 шагов в разборе
2165ФИПИ 57cFD7№ 25ВысокаяТеория чисел

Маска числа и делители

Назовём маской числа последовательность цифр, в которой также могут встречаться следующие символы: символ «?» означает ровно одну произвольную цифру; символ «*» означает любую последовательность…

  1. 1
    Так как число не превышает $10^{10}$, в маске 89*6?7?9? символ «*» может задавать от нуля до двух цифр.
  2. 2
    Перебираем все числа, кратные 9874, в диапазоне от минимального числа, соответствующего маске, до $10^{10}$.

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

Решение полностьюОтветРешать самому3 шага в разборе
2166ФИПИ 599D9D№ 25ПовышеннаяСистемы счисления

Подсчёт цифр в строках

Цепочки символов (строки) создаются по следующему правилу. Первая строка состоит из одного символа — цифры «1». Каждая из последующих цепочек создаётся так: в очередную строку дважды записывается…

  1. 1
    Обозначим через $E_i$ количество чётных цифр в $i$-й строке. При создании новой строки предыдущая строка записывается дважды, поэтому её вклад удваивается.
  2. 2
    Приписанная цифра увеличивает количество чётных цифр на единицу только для чётных номеров строк.

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

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

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

По каналу связи передаётся последовательность целых неотрицательных чисел — показания прибора, полученные с интервалом в 1 мин в течение $T$ минут. Определите два переданных числа, чтобы между…

  1. 1
    Если два показания имеют индексы $j$ и $i$, то условие задачи имеет вид $i-j \geq K$. При фиксированном $i$ выгодно выбрать среди допустимых предыдущих элементов максимальный.$$j \leq i-K$$
  2. 2
    При последовательном чтении данных поддерживаем максимум всех элементов с индексами от $0$ до $i-K$. После обработки очередного элемента обновляем этот максимум и рассматриваем сумму с текущим значением.$$S_i=a_i+\max_{0\leq j\leq i-K}a_j$$

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

Решение полностьюОтветРешать самому4 шага в разборе
2168ФИПИ 5Ac24e№ 25ПовышеннаяСистемы счисления

Построение числа в двоичной записи

На вход алгоритма подаётся натуральное число $N$. Алгоритм строит по нему новое число $R$ следующим образом. Строится двоичная запись числа $N$. Если число $N$ чётное, то к этой записи справа и…

  1. 1
    Проверим числа, близкие к $113$, в двоичной системе счисления. Для результата, полученного из нечётного $N$, двоичная запись должна иметь вид $1b00$.
  2. 2
    Число $108$ представляется в виде $1101100_2$. Отделяем первую единицу и два последних нуля: получаем $b=1011_2=11_{10}$.

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

Решение полностьюОтветРешать самому4 шага в разборе
2169ФИПИ 5AE347№ 25ПовышеннаяАлгоритмы и исполнители

Количество итераций цикла

Определите, при каком наибольшем введённом значении переменной $s$ программа выведет число 64. Для Вашего удобства программа представлена на четырёх языках программирования. Паскаль: ```pascal var…

  1. 1
    Начальное значение переменной $n$ равно 1, и на каждой итерации цикла оно увеличивается в 2 раза.$$n = 2^k$$
  2. 2
    Чтобы программа вывела 64, цикл должен выполниться 6 раз.$$2^k = 64 = 2^6 \Rightarrow k = 6$$

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

Решение полностьюОтветРешать самому5 шагов в разборе
2170ФИПИ 5B5A4F№ 25ПовышеннаяАлгоритмы и исполнители

Подсчёт обменов в массиве

В программе используется одномерный целочисленный массив $A$ с индексами от 0 до 9. Значения элементов равны 9, 6, 4, 7, 3, 2, 1, 5, 0, 8 соответственно. Определите значение переменной $c$ после…

  1. 1
    Изначально массив имеет вид $[9,6,4,7,3,2,1,5,0,8]$, поэтому $A[9]=8$ и $c=0$.
  2. 2
    При $i=0$: $9<8$ — неверно, обмена нет. При $i=1$: $6<8$ — верно, $c=1$, после обмена $A[9]=6$.

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

Решение полностьюОтветРешать самому6 шагов в разборе
2171ФИПИ 5C8ABE№ 25ВысокаяТеория чисел

Сумма собственных делителей

Пусть $R$ — сумма различных натуральных делителей целого числа, не считая единицы и самого числа. Напишите программу, которая перебирает целые числа, большие $500\,000$, в порядке возрастания и ищет…

  1. 1
    Перебираем числа $n$, начиная с $500001$, в порядке возрастания.$$n=500001,500002,\ldots$$
  2. 2
    Для каждого $n$ перебираем делители $d$ от 2 до $\lfloor\sqrt n\rfloor$. При обнаружении делителя добавляем к сумме $d$ и парный делитель $n/d$, если они различны и не равны самому числу.$$R(n)=\sum_{d\mid n,\ 1<d<n}d$$

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

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

Минимум кратных трём

Дан целочисленный массив из 30 элементов. Элементы массива могут принимать натуральные значения от 1 до 10 000 включительно. Опишите на одном из языков программирования алгоритм, который находит…

  1. 1
    Используем две обработки массива: сначала находим минимальный элемент, делящийся на 3, затем изменяем элементы, делящиеся на 3, и выводим результат.
  2. 2
    Например, на Python фрагмент программы может выглядеть так: j = 10001 for i in range(0, n): if a[i] % 3 == 0 and a[i] < j: j = a[i] for i in range(0, n): if a[i] % 3 == 0: a[i] += j print(a[i])

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

Решение полностьюОтветРешать самому3 шага в разборе
2173ФИПИ 632487№ 25ПовышеннаяАлгоритмы и исполнители

Обработка массива из 30 элементов

Дан целочисленный массив из 30 элементов. Элементы массива могут принимать целые значения от 0 до 10 000 включительно. Опишите на одном из языков программирования алгоритм, который находит…

  1. 1
    Используем переменную j для подсчёта элементов, которые меньше 100 и не кратны 5.$$a[i] < 100 \text{ и } a[i] \bmod 5 \ne 0$$
  2. 2
    После подсчёта повторно просматриваем массив. Каждый подходящий элемент заменяем значением j.

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

Решение полностьюОтветРешать самому3 шага в разборе
2174ФИПИ 63C95E№ 25ПовышеннаяАлгоритмы и исполнители

Минимальное число после обработки

На вход алгоритма подаётся натуральное число $N$. Алгоритм строит по нему новое число $R$. Сначала строится двоичная запись числа $N$. Если сумма цифр в двоичной записи чётная, к записи справа…

  1. 1
    Для чисел от $1$ до $15$ двоичная запись содержит не более четырёх разрядов, поэтому после обработки результат не превышает $22$ и не может быть больше 50.
  2. 2
    Рассмотрим следующие числа. Для $N=16$: $16_{10}=10000_2$, сумма цифр равна 1, поэтому получаем $110001_2=49_{10}$.$$10000_2 \to 100001_2 \to 110001_2=49_{10}$$

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

Решение полностьюОтветРешать самому5 шагов в разборе
2175ФИПИ 64AF17№ 25ПовышеннаяОсновы программирования

Результат выполнения цикла

Запишите число, которое будет напечатано в результате выполнения программы. Во всех представленных вариантах программы используется целочисленное деление.

  1. 1
    В начале работы программы $s=250$, $n=1$. На каждой итерации выполняется целочисленное деление $s$ на $3$ и умножение $n$ на $2$.$$s \leftarrow \lfloor s/3 \rfloor,\quad n \leftarrow 2n$$
  2. 2
    Последовательно вычисляем значения переменной $s$:$$250 \to 83 \to 27 \to 9 \to 3 \to 1 \to 0$$

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

Решение полностьюОтветРешать самому3 шага в разборе
2176ФИПИ 64F31F№ 25ВысокаяТеория чисел

Поиск чисел с квадратным M

Пусть $M$ — сумма минимального и максимального простых натуральных делителей целого числа, не считая самого числа. Если таких делителей у числа нет, то значение $M$ считается равным нулю. Напишите…

  1. 1
    Последовательно перебираем целые числа, большие $5\,700\,000$, и для каждого определяем минимальный и максимальный простые делители, не считая самого числа.
  2. 2
    Для каждого числа вычисляем $M$ как сумму найденных делителей и проверяем условия $M > 70\,000$ и $M = k^2$ для некоторого натурального $k$.$$M=p_{\min}+p_{\max}=k^2$$

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

Решение полностьюОтветРешать самому3 шага в разборе
2177ФИПИ 661336№ 25ВысокаяТеория чисел

Числовая маска и делимость

Назовём маской числа последовательность цифр, в которой также могут встречаться следующие символы: символ «?» означает ровно одну произвольную цифру; символ «*» означает любую последовательность…

  1. 1
    Так как число начинается с цифры 3 и не превышает $10^8$, длина последовательности, задаваемой символом «*», может быть от 0 до 2 цифр.
  2. 2
    Перебираем цифры вместо «?» и последовательности цифр вместо «*», проверяя соответствие маске и делимость на 3023.

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

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

Обработка массива с обменом

В программе используется одномерный целочисленный массив $A$ с индексами от 0 до 9. Значения элементов равны 9, 8, 4, 7, 3, 2, 1, 5, 0, 6 соответственно, то есть $A[0]=9$, $A[1]=8$ и т. д…

  1. 1
    Изначально $A[9]=6$, а $c=0$. Проверяем элементы с индексами от 0 до 8.
  2. 2
    При $i=0$ и $i=1$ элементы 9 и 8 не меньше 6, поэтому обмена нет.

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

Решение полностьюОтветРешать самому6 шагов в разборе
2179ФИПИ 68B331№ 25ПовышеннаяАлгоритмы и исполнители

Подсчёт перестановок массива

В программе используется одномерный целочисленный массив $A$ с индексами от 0 до 9. Значения элементов равны 6, 8, 4, 3, 7, 9, 5, 2, 0, 1 соответственно, то есть $A[0]=6$, $A[1]=8$ и так далее…

  1. 1
    Изначально $A[0]=6$ и $c=0$. При $i=1$ значение $A[1]=8$, поэтому условие не выполняется.
  2. 2
    При $i=2$ имеем $A[2]=4<6$. Увеличиваем $c$ до 1 и меняем местами $A[2]$ и $A[0]$. Теперь $A[0]=4$.$$c=1$$

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

Решение полностьюОтветРешать самому6 шагов в разборе
2180ФИПИ 6D2D86№ 25ВысокаяТеория чисел

Поиск чисел по делителям

Пусть $M$ — сумма минимального и максимального натуральных делителей целого числа, не считая единицы и самого числа. Если таких делителей у числа нет, то считаем значение $M$ равным нулю. Напишите…

  1. 1
    Для каждого целого числа, начиная с $452022$, перебираем возможные делители до квадратного корня числа.$$1 < d \leq \sqrt{n}$$
  2. 2
    Для составного числа минимальным нетривиальным делителем является первый найденный делитель $d$, а максимальным — парный делитель $n / d$. Поэтому $M = d + n/d$.

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

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