ЕГЭ 2023 по информатике: Разбор заданий №7 (звук)

Продолжаем подготовку к ЕГЭ по информатике 2023 года. Разбираем задания, присланные подписчиками. Ссылка для отправки своих заданий — ниже.

Задание №7: Звуковой фрагмент

Записывается звуковой фрагмент в формате квадро (четырёхканальная запись) с частотой дискретизации 32 кГц и 32-битным разрешением. Файл записывается без сжатия, с добавлением служебной информации. Размер файла — 97 МБ (обозначим как I₁ + X, где I₁ — объём звукового фрагмента, X — объём служебной информации).

Затем производится повторная запись того же фрагмента в формате моно с частотой дискретизации 16 кГц и 16-битным разрешением. Файл записывается без сжатия и со служебной информацией. Размер файла — 7 МБ (обозначим как I₂ + X). Объём служебной информации в обоих случаях одинаковый. Найдите этот объём (X) в мегабайтах.

Так как I₁ в два раза больше I₂ по частоте дискретизации (32 кГц против 16 кГц), в два раза больше по битному разрешению (32 бита против 16 бит) и в четыре раза больше по количеству каналов (4 против 1), то I₁ = 16I₂. Обозначим I₂ как Y. Тогда I₁ = 16Y.

Получаем систему уравнений:

  • 16Y + X = 97
  • Y + X = 7

Выражаем X из второго уравнения: X = 7 — Y. Подставляем в первое уравнение:

16Y + 7 — Y = 97

15Y = 90

Y = 6

X = 7 — 6 = 1

Объём служебной информации составляет 1 МБ.

Задание №12: Редактор и простое число

Программа для редактора получает на вход строку, начинающуюся с символа «>» и содержащую 23 единицы, N цифр 2 и 25 цифр 3, расположенных в произвольном порядке. Найдите наименьшее значение N, при котором сумма числовых значений цифр результирующей строки является простым числом.

Расположение цифр в исходной строке не влияет на результат, так как алгоритм заменяет все единицы на единицы, все двойки на двойки и все тройки на тройки.

Алгоритм программы:

Пока в строке есть «>» и «1», «>» и «2», или «>» и «3»:

  • Замена «>» и «1» на «1>»
  • Замена «>» и «2» на «>1»
  • Замена «>» и «3» на «>11»

Перебираем значения N от 1 до 100. Для каждого N создаём исходную строку: S = «>23 единицы + N двоек + 25 троек». Применяем алгоритм. Получаем строку, состоящую из символов «>» и «1». Суммируем числовые значения цифр (исключая «>»), проверяем на простоту.

Функция проверки на простоту:

def is_prime(num):
    if num < 2:
        return False
    for i in range(2, num):
        if num % i == 0:
            return False
    return True

Наименьшее значение N, при котором сумма является простым числом — 3.

Задание №15: Тождество

Для какого наименьшего целого неотрицательного числа a выражение 3m + 4n > 63 or (m <= a and n < a) тождественно истинно при любых целых неотрицательных m и n?

Используем функцию all():

def check(a, m, n):
    return 3 * m + 4 * n > 63 or (m <= a and n < a)

a = 0
while True:
    if all(check(a, m, n) for m in range(1000) for n in range(1000)):
        print(a)
        break
    a += 1

Наименьшее значение a — 21.

Задание №16: Рекурсия и сумма

Найдите значение функции f(24), заданной рекуррентно:

  • f(n) = 1, если n < 3
  • f(n) = f(n-1) + f(n-2), если n >= 3 и n нечётно
  • f(n) = sum(f(i) for i in range(1, n)), если n >= 3 и n чётно

Рекурсивная функция на Python:

def f(n):
    if n < 3:
        return 1
    elif n % 2 != 0:
        return f(n - 1) + f(n - 2)
    else:
        return sum(f(i) for i in range(1, n))

print(f(24))

Результат: 887040

Рассмотрены четыре задания по информатике из вариантов ЕГЭ. Использованы различные подходы к решению, включая перебор, систему уравнений и рекурсию. Применение функций all() и sum() в Python упростило решение некоторых задач.

Что будем искать? Например,программа