ЕГЭ · информатика · жауаптары бар шешімдер

Информатика ЕГЭ — ФИПИ тапсырмаларының жауаптарымен шешімдері

Пәннің барлық есептері ФИПИ ашық банкінен алынған, жауаптары және талдаудың басымен бірге. Жеке тақырып немесе тапсырма нөмірі бойынша шешімдер — сол жақ панельде.

Шешімсіз тапсырмалар
2 435
жауаптары бар шешімдер
14
пәндегі тақырыптар
27
бланк нөмірлері
122
тізім беттері
2081ФИПИ CF38C4№ 24КүрделіМассивтер және жолдар

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

Текстовый файл состоит из цифр 0, 2, 3, 4, 5 и знаков арифметических операций «−» и «*» (вычитание и умножение). Определите максимальное количество символов в непрерывной последовательности, которая…

  1. 1
    Из файла выделяются непрерывные фрагменты, в которых цифры образуют неотрицательные числа, между соседними числами находится ровно один знак «−» или «*».
  2. 2
    Фрагменты, содержащие два знака подряд, многозначные числа с ведущим нулём или число 0 со знаком, не являются корректными выражениями.

Ещё 1 қадам — толық шешімде

Шешім полностьюЖауапШешу самому3 қадам в разборе
2082ФИПИ D479DB№ 24ЖоғарыСанау жүйелері

Исправление программы на Python

Дано целое положительное число $N$, не превосходящее 1000. Нужно написать программу, которая определяет, является ли это число степенью числа 4: выводит на экран либо такое целое число $K$, что…

  1. 1
    В начале работы программы $k = 0$, поэтому условие цикла `k % 4 == 0` истинно. После первой итерации $k$ становится равным 1, а $n$ при входном значении 16 становится равным 4.$$16 // 4 = 4$$
  2. 2
    После первой итерации условие `k % 4 == 0` становится ложным, поскольку $1 \bmod 4 = 1$. Цикл завершается.

Ещё 4 қадам — толық шешімде

Шешім полностьюЖауапШешу самому6 қадам в разборе
2083ФИПИ D6DFe2№ 24ЖоғарыМассивтер және жолдар

Іздеу последовательности в файле

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

  1. 1
    Считаем позиции начала всех вхождений подстроки 2025. Вхождения могут пересекаться, поэтому проверяем каждую позицию строки.
  2. 2
    Построим префиксные суммы количества букв Y и количества вхождений 2025. Для фрагмента [l, r] число букв Y вычисляется за O(1).

Ещё 2 қадам — толық шешімде

Шешім полностьюЖауапШешу самому4 қадам в разборе
2084ФИПИ DD0C38№ 24КүрделіМассивтер және жолдар

Минимальный фрагмент с W

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

  1. 1
    Считываем строку из файла и рассматриваем её как последовательность символов.
  2. 2
    Двигаем правую границу окна слева направо. При встрече символа $W$ увеличиваем счётчик символов $W$.$$count_W \mathrel{+}= 1$$

Ещё 2 қадам — толық шешімде

Шешім полностьюЖауапШешу самому4 қадам в разборе

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

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

  1. 1
    Из последовательности 2, 9, 4, 3 числа 9 и 3 делятся нацело на 3, поэтому количество таких чисел равно 2.
  2. 2
    Переменная maximum изначально равна 999. После обработки числа 9 условие $9 < 999$ истинно, поэтому maximum становится равной 9. После обработки числа 3 условие $3 < 9$ также истинно, поэтому maximum становится равной 3.

Ещё 4 қадам — толық шешімде

Шешім полностьюЖауапШешу самому6 қадам в разборе

Іздеу минимальной цифры

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

  1. 1
    Рассмотрим работу программы при вводе числа 128. Сначала minDigit получает значение 9.
  2. 2
    Из числа 128 последовательно извлекаются цифры 8, 2 и 1. Цифра 8 больше 3 и меньше minDigit, но программа ошибочно присваивает значение minDigit переменной digit. Значение minDigit остаётся равным 9.

Ещё 4 қадам — толық шешімде

Шешім полностьюЖауапШешу самому6 қадам в разборе
2087ФИПИ E74424№ 24КүрделіМассивтер және жолдар

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

Текстовый файл состоит из заглавных букв латинского алфавита Q, R, W и цифр 1, 2, 4. Определите в прилагаемом файле максимальное количество идущих подряд символов, среди которых ни одна буква не…

  1. 1
    Условие выполняется, если каждый следующий символ имеет тип, отличный от типа предыдущего: после буквы должна идти цифра, а после цифры — буква.
  2. 2
    При последовательном просмотре файла поддерживаем длину текущего подходящего фрагмента. Если тип текущего символа отличается от типа предыдущего, увеличиваем длину; иначе начинаем новый фрагмент с длины 1.$$current = \begin{cases} current + 1, & type(s_i) \ne type(s_{i-1}) \\ 1, & type(s_i) = type(s_{i-1}) \end{cases}$$

Ещё 1 қадам — толық шешімде

Шешім полностьюЖауапШешу самому3 қадам в разборе
2088ФИПИ F04010№ 24КүрделіМассивтер және жолдар

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

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

  1. 1
    Считываем содержимое приложенного файла как строку.
  2. 2
    Двигаем правую границу окна по строке и подсчитываем количество символов $Y$ внутри окна.$$count_Y \geq 260$$

Ещё 2 қадам — толық шешімде

Шешім полностьюЖауапШешу самому4 қадам в разборе

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

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

  1. 1
    Обработаем число 947 справа налево. Сначала digit = 7: цифра не делится на 3, count остаётся равным 0. Затем digit = 4: count также равен 0. Наконец digit = 9: цифра делится на 3, поэтому count увеличивается на 9 и становится равным 9.$$count = 9$$
  2. 2
    После завершения цикла значение digit равно 9. Проверка count == digit выполняется, поэтому программа выводит число 9.$$9 = 9$$

Ещё 3 қадам — толық шешімде

Шешім полностьюЖауапШешу самому5 қадам в разборе

Іздеу минимальной цифры

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

  1. 1
    При вводе 123 переменная minDigit изначально получает значение последней цифры: 3. Далее программа последовательно рассматривает цифры 3, 2 и 1. Ни одна из них не делится на 4, поэтому minDigit не изменяется.$$minDigit = 3$$
  2. 2
    После завершения цикла программа проверяет условие minDigit == 0. Оно ложно, поэтому на экран выводится число 3.$$3 \ne 0 \Rightarrow \text{вывод } 3$$

Ещё 3 қадам — толық шешімде

Шешім полностьюЖауапШешу самому5 қадам в разборе

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

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

  1. 1
    В последовательности $20\ 93\ 40\ 39$ чётными являются числа 20 и 40. Они занимают позиции 1 и 3. Программа увеличивает count два раза, поэтому count становится равным 2.
  2. 2
    Из-за ошибки программа складывает нөмір позиций, а не сами чётные числа: $sum = 1 + 3 = 4$. Поэтому она выводит сначала 2, затем 4.

Ещё 5 қадам — толық шешімде

Шешім полностьюЖауапШешу самому7 қадам в разборе

Замена кратных четырём

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

  1. 1
    Сначала просматриваем все элементы массива и выбираем среди кратных 4 наименьший. В Python переменная j может хранить найденный минимум.$$a[i] \bmod 4 = 0$$
  2. 2
    Так как все элементы не превосходят 10000, можно начать поиск с j = 10000. Гарантия существования элемента, кратного 4, обеспечивает корректное обновление j.$$j = \min\{a[i] \mid a[i] \bmod 4 = 0\}$$

Ещё 2 қадам — толық шешімде

Шешім полностьюЖауапШешу самому4 қадам в разборе

Команды исполнителя Калькулятор

У исполнителя Калькулятор две команды: 1) прибавь 2; 2) умножь на 5. Выполняя первую команду, Калькулятор прибавляет к числу на экране 2, а выполняя вторую — умножает его на 5. Запишите порядок…

  1. 1
    Перебираем последовательности команд длиной не более четырёх символов и последовательно применяем их к числу 1.
  2. 2
    Согласно проверенному ключу, подходящая последовательность команд имеет вид 2112.

Ещё 1 қадам — толық шешімде

Шешім полностьюЖауапШешу самому3 қадам в разборе

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

У медицинской компании есть $N$ пунктов приёма биоматериалов, расположенных вдоль автомагистрали. Для каждого пункта известны его номер и количество ежедневно принимаемых пробирок. Пробирки…

  1. 1
    Для каждого пункта заменяем количество пробирок на число контейнеров:$$c_i=\left\lceil\frac{q_i}{36}\right\rceil$$
  2. 2
    Стоимость лаборатории в пункте с координатой $x_j$ равна:$$S_j=\sum_{i=1}^{N}|x_i-x_j|c_i$$

Ещё 2 қадам — толық шешімде

Шешім полностьюЖауапШешу самому4 қадам в разборе

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

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

  1. 1
    В начале $A[9]=8$ и $c=0$. При $i=0$: $5<8$, поэтому выполняется обмен, а $c$ становится равным 1. Теперь $A[9]=5$.$$c=1$$
  2. 2
    При $i=1$: $6<5$ — қате. При $i=2$: $4<5$ — дұрыс, выполняется обмен, и $c=2$. Теперь $A[9]=4$.$$c=2$$

Ещё 3 қадам — толық шешімде

Шешім полностьюЖауапШешу самому5 қадам в разборе

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

Дана последовательность из $N$ натуральных чисел. Рассматриваются все её непрерывные подпоследовательности, сумма элементов каждой из которых кратна $k=71$. Найдите среди них подпоследовательность с…

  1. 1
    Обозначим через $S_i$ сумму первых $i$ элементов последовательности, где $S_0=0$. Сумма элементов подпоследовательности от $l+1$ до $r$ равна $S_r-S_l$.$$S_r-S_l$$
  2. 2
    Эта сумма кратна $71$, если префиксные суммы имеют одинаковые остатки при делении на $71$.$$S_r \equiv S_l \pmod{71}$$

Ещё 3 қадам — толық шешімде

Шешім полностьюЖауапШешу самому5 қадам в разборе

Результат работы цикла

Запишите число, которое будет напечатано в результате выполнения программы. В программе переменным $s$ и $n$ присваиваются начальные значения: $s = 30$, $n = 1$. Пока $s > 0$, выполняются команды…

  1. 1
    В каждой итерации значение $s$ делится на 3 с целочисленным округлением вниз.$$30 \to 10 \to 3 \to 1 \to 0$$
  2. 2
    После получения нуля условие $s > 0$ становится ложным. Значит, цикл выполнился 4 раза.

Ещё 1 қадам — толық шешімде

Шешім полностьюЖауапШешу самому3 қадам в разборе
2098ФИПИ 087707№ 25КүрделіМассивтер және жолдар

Сумма соседних разностей массива

В программе используется одномерный целочисленный массив $A$ с индексами от 0 до 10. Фрагмент программы вычисляет значение переменной $s$ по формуле $s = s + A[i] - A[i+1]$ при $i$ от 0 до 9. В…

  1. 1
    Цикл выполняется для $i$ от 0 до 9, поэтому переменная $s$ получает сумму он соседних разностей.$$s=(A[0]-A[1])+(A[1]-A[2])+\dots+(A[9]-A[10])$$
  2. 2
    Слагаемые с промежуточными элементами взаимно сокращаются.$$s=A[0]-A[10]$$

Ещё 1 қадам — толық шешімде

Шешім полностьюЖауапШешу самому3 қадам в разборе
2099ФИПИ 08CA7D№ 25КүрделіМассивтер және жолдар

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

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

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

Ещё 3 қадам — толық шешімде

Шешім полностьюЖауапШешу самому5 қадам в разборе

Цикл с условием

Запишите число, которое будет напечатано в результате выполнения следующей программы. Программа представлена на пяти языках программирования: Бейсик, Python, алгоритмический язык, Паскаль и Си.

  1. 1
    В начале работы программы $s = 0$, $n = 0$. За один проход цикла значение $s$ увеличивается на 10, а значение $n$ — на 2.$$s = 10k,\quad n = 2k$$
  2. 2
    После 9 проходов $s = 90$, условие $s < 91$ всё ещё выполняется. После 10-го прохода $s = 100$, условие становится ложным.$$k = 10$$

Ещё 1 қадам — толық шешімде

Шешім полностьюЖауапШешу самому3 қадам в разборе