Задание 8 ЕГЭ по информатике: измерение количества информации
Задание 8 КЕГЭ проверяет элемент содержания 2.2 «Измерение количества информации» и почти всегда выглядит как задача на комбинаторику: сколько слов заданной длины можно составить из данного алфавита при дополнительных условиях — запрет на соседство определённых букв, ограничение на число вхождений какой-то буквы, требование не повторять буквы и так далее. Это задание базового уровня сложности, за него дают 1 первичный балл, ответ — целое число, файла к заданию не прилагается и специализированное ПО не нужно. Ниже — вся теория (правило произведения и суммы, размещения с повторениями и без, учёт запретов, динамика по позициям), рабочий код на Python для полного перебора и три разбора реальных заданий из открытого банка ФИПИ. Тренироваться можно на реальных заданиях 8 ЕГЭ по информатике онлайн — с мгновенной проверкой ответа.
Что проверяет задание 8 ЕГЭ по информатике
КЕГЭ сдаётся за компьютером, все 27 заданий — с кратким ответом, и задание 8 не исключение: правильный ответ проверяется автоматически посимвольным сравнением с эталоном. По кодификатору задание относится к разделу «Теоретические основы информатики» и проверяет элемент содержания 2.2 «Измерение количества информации». На практике это означает не формулу (она чаще встречается в задании 11 — там тот же КЭС 2.2, но повышенный уровень), а прямой подсчёт вариантов: сколько существует слов, чисел или кодов, удовлетворяющих условию.
Проверяемые умения (КЭС 2.2):
- применять правило произведения и правило суммы комбинаторики к задачам на подсчёт слов и чисел;
- считать размещения с повторениями () и без повторений, когда условие запрещает повторять буквы;
- корректно учитывать запреты в условии — «не более одной буквы У», «не стоят рядом две гласные», «ровно одна буква К» — через разбиение на случаи или вычитание «плохих» вариантов из общего числа;
- не путать измерение количества информации через подсчёт вариантов (задание 8) с измерением через степень числа при известном количестве сообщений (задание 11, тот же КЭС, но повышенный уровень).
Ниже — цифры по действующей спецификации ФИПИ 2026 года. Проекты КИМ-2027 ФИПИ публикует в конце августа 2026 года, финальная версия выходит в ноябре; структура работы не менялась с 2025 года.
| Параметр | Значение |
|---|---|
| Максимальный балл | 1 первичный. Частичного зачёта у задания 8 нет — ответ либо полностью совпадает с эталоном, либо 0 баллов (частичный зачёт на КЕГЭ есть только у заданий 26 и 27) |
| Уровень сложности | Базовый — одно из 11 заданий базового уровня во всей работе |
| Проверяемый элемент содержания | КЭС 2.2 «Измерение количества информации», раздел «Теоретические основы информатики» |
| Форма ответа | Целое число, без пробелов и других символов |
| Файл к заданию | Не прилагается |
| Специализированное ПО | Не требуется: задание решается на черновике, компьютер нужен только для ввода готового числа в ответ |
| Время | 4 минуты — примерное время выполнения задания по обобщённому плану варианта КИМ ЕГЭ (спецификация ФИПИ) |
| Связанные задания | Задание 11 (тот же КЭС 2.2, но повышенный уровень и формула ), задание 7 (КЭС 2.6, тоже про объём информации, но для графики и звука) |
Тренируйтесь на реальных заданиях
Задания ЕГЭ по информатике из открытого банка ФИПИ с мгновенной проверкой ответа. Решаем, ошибаемся, разбираем — бесплатно.
Как выглядит формулировка
У задания 8 нет единого шаблона текста — меняется и алфавит, и запрет, и то, что именно нужно посчитать (число слов, номер слова в списке, количество кодов). Вот реальные формулировки из открытого банка ФИПИ:
- «Игорь составляет таблицу кодовых слов для передачи сообщений … В качестве кодовых слов Игорь использует трёхбуквенные слова, в которых могут быть только буквы Ш, К, О, Л, А, причём буква К появляется ровно 1 раз … Сколько различных кодовых слов может использовать Игорь?»
- «Сколько существует различных четырёхзначных чисел, записанных в десятичной системе счисления, в записи которых есть ровно две одинаковые цифры, причём стоящие рядом?»
- «Все пятибуквенные слова, в составе которых могут быть только русские буквы П, А, Р, У, С, записаны в алфавитном порядке и пронумерованы начиная с 1 … Под каким номером в списке идёт последнее слово, которое содержит не более одной буквы У и не содержит букв А, стоящих рядом?»
- «Шифр кодового замка представляет собой последовательность из пяти символов, каждый из которых является цифрой от 1 до 4. Сколько различных вариантов шифра можно задать, если известно, что цифра 2 должна встречаться в коде ровно один раз …?»
За разнообразием формулировок стоят на самом деле два разных типа вопроса, и их важно различать сразу:
- «Сколько существует слов/чисел/кодов» — спрашивают напрямую количество вариантов, удовлетворяющих условию. Это прямое применение правила произведения, суммы и учёта запретов.
- «Под каким номером в списке» — слова выписаны в алфавитном порядке и пронумерованы, а спрашивают номер конкретного (обычно первого или последнего подходящего) слова. Здесь считать нужно не всё множество слов, а сколько слов стоит в списке раньше искомого — то есть снова считать вариант через правило произведения, только для другого множества слов.
Как записывается ответ. Ответ на задание 8 — целое число: количество слов, чисел, кодов или номер в списке. Инструкция по выполнению работы требует записывать краткий ответ «в виде целого числа … без пробелов, запятых и других дополнительных символов». Никаких единиц измерения («слов», «штук») в ответе быть не должно — только цифры. Многозначные ответы (405, 2969, 3125) в открытом банке — обычное дело, большое число само по себе не повод сомневаться в решении.
Теория: всё, что нужно для задания 8
Правило произведения и правило суммы
Правило произведения
Если объект строится из последовательных независимых выборов, и на первом шаге есть вариантов, на втором — и так далее, то всего вариантов:
«Независимо» означает: выбор на одном шаге не сокращает и не меняет число вариантов на другом. Пример — трёхбуквенное слово из алфавита в 5 букв без ограничений: слов.
Правило суммы
Если объект можно получить взаимоисключающими способами (случай 1 ИЛИ случай 2 ИЛИ …), и в случае есть вариантов, то всего:
Ключевое отличие от произведения: случаи должны не пересекаться — один и тот же объект не должен посчитаться дважды в разных случаях. В задании 8 правило суммы почти всегда появляется, когда особая буква или цифра может стоять на разных позициях слова — тогда сумма берётся по позиции.
Размещения с повторениями и без повторений
С повторениями (буквы можно ставить сколько угодно раз)
Это самый частый случай в задании 8: «каждая из допустимых букв может встречаться любое количество раз или не встречаться совсем». Тогда каждая из позиций слова заполняется независимо любой из букв алфавита:
Например, слов длины 5 из алфавита в 5 букв без ограничений — .
Без повторений (буквы не должны повторяться)
Если условие говорит «все буквы в слове различны», на первом месте по-прежнему вариантов, но на втором уже (использованная буква выбывает), на третьем и так далее:
Эта формула — размещения без повторений, в комбинаторике обозначаются . Спутать эти два случая — частая ошибка: прежде чем писать формулу, найдите в условии фразу «может встречаться любое количество раз» (значит ) или «различны», «не повторяются» (значит ).
Как учитывать запреты: два рабочих приёма
Почти в каждом задании 8 к «голому» добавляется ограничение: буква встречается ровно один раз, две буквы не стоят рядом, цифра вообще не встречается. Есть два приёма, и выбор между ними зависит от формы запрета.
Приём 1 — разбиение на случаи (когда запрет «жёсткий»)
Работает для условий вида «буква Х встречается ровно один раз». Идея: сначала выбрать позицию для особой буквы (это и есть правило суммы — X может стоять на месте 1, 2, … или n), а остальные позиций заполнить произвольно любой из оставшихся букв:
Например, пятисимвольный код из цифр 1–4, где цифра 2 встречается ровно один раз: позиция для двойки — способов, остальные четыре места — по варианта (1, 3 или 4): .
Приём 2 — «от общего числа вычесть плохие» (дополнение)
Работает, когда условие проще сформулировать «от противного»: например, «хотя бы одна буква А» — искать это разбиением на случаи неудобно (А может встретиться 1 раз, 2 раза, 3 раза…), а вот дополнение считается в одну строчку. Всего слов — , слов вообще без буквы А (на каждом месте вариант) — , значит:
Игрушечный пример на двоичном алфавите: слов длины из битов 0 и 1, где есть хотя бы одна единица, — (вычли ровно одно «плохое» слово — все нули).
Приём выбирается по формулировке запрета: «ровно один раз» — почти всегда разбиение на случаи по позиции; «хотя бы один раз», «не более» — часто быстрее через дополнение. Если запрет смешанный («не более одной буквы У И нет соседних А» — так устроено одно из заданий ниже), одной формулой не обойтись: нужно либо аккуратно комбинировать случаи, либо перейти к следующему приёму — динамике по позициям.
Динамика по позициям: универсальный приём
Когда запрет касается соседних букв (нельзя поставить рядом две гласные, нельзя дважды подряд одну и ту же цифру), разбиение на случаи быстро превращается в кашу из десятков вариантов. Универсальный выход — считать слово по буквам слева направо и хранить не одно число, а несколько: по одному на каждый «класс», которым может заканчиваться уже построенный кусок слова.
Разберём классическую задачу: алфавит из 3 гласных (А, Е, И) и 3 согласных (Б, В, Г), нельзя ставить рядом две гласные. Сколько существует слов длины ? Обозначим через число подходящих слов длины , оканчивающихся на согласную, а через — оканчивающихся на гласную.
База (i = 1):
Переход (i → i + 1):
К согласной можно дописать любую из 3 согласных, независимо от того, чем заканчивался предыдущий кусок:
А к гласной можно приписать гласную, только если перед ней стояла согласная (иначе — запрещённое соседство двух гласных):
Расставляем по шагам:
i c_i v_i всего
1 3 3 6
2 18 9 27
3 81 54 135
4 405 243 648
5 1944 1215 3159Ответ для — слов. Прямая формула здесь не работает, потому что запрет зависит от соседней буквы, а не от всего слова целиком — а динамика по позициям справляется с любым локальным запретом за шагов, даже если классов не два, а пять.
Полный перебор программой — законный приём на КЕГЭ
КЕГЭ сдаётся за компьютером, и на экзамене доступна среда программирования (в том числе Python). Если формула не вспоминается или условие слишком запутанное для ручного разбора на случаи, а количество вариантов небольшое — переберите все слова программой и отфильтруйте подходящие. Это не «нечестный» способ, а рабочий инструмент: часто он быстрее и надёжнее, чем комбинаторная формула, в которой легко ошибиться на пограничном случае.
Шаблон для задачи «слова длины из алфавита , буква К встречается ровно один раз» (то же условие, что в примере 1 ниже, только длина и алфавит — переменные):
from itertools import product
alphabet = 'ШКОЛА'
n = 3
count = 0
for word in product(alphabet, repeat=n):
if word.count('К') == 1:
count += 1
print(count)перебирает все строк длины ровно так, как их описывает правило произведения — по одной букве на позицию, независимо. Дальше достаточно проверить условие в и посчитать подходящие. Для запрета на соседние буквы условие внутри цикла заменяется на проверку пар соседних символов — например, для запрета на две буквы А подряд.
Для задач «под каким номером в списке» перебор ещё удобнее: достаточно отсортировать все слова ( для латиницы, кириллица в Python тоже сортируется по алфавиту корректно) и найти позицию нужного слова функцией или циклом с — искать формулой вручную вообще не придётся.
Где перебор перестаёт работать
У перебора есть жёсткий потолок: количество слов растёт как , и на некоторых сочетаниях и оно перестаёт помещаться в разумное время — даже если сам код написан без единой ошибки.
| Алфавит и длина | Количество слов | Перебор на экзамене |
|---|---|---|
| (6 букв, слово из 7) | 279 936 | Работает: доли секунды |
| (5 букв, слово из 10) | 9 765 625 | На грани: несколько секунд, но ещё приемлемо |
| (26 букв, слово из 10) | 141 167 095 653 376 | Не работает: перебор займёт годы |
Ориентир: если заметно превышает , программу на экзамене дописать не успеть — нужна формула (правило произведения/суммы, разбиение на случаи, дополнение или динамика по позициям из блоков выше). В открытом банке по заданию 8 такие большие числа не встречаются: длины слов — 3–6 букв, алфавиты — 4–10 символов, так что перебор почти всегда укладывается в лимит. Но проверять порядок числа в уме перед тем, как писать цикл, полезно всегда.
Алгоритм решения задания 8
- Выпишите алфавит и его размер , длину слова и дословно — все ограничения из условия. Отдельно отметьте, что именно спрашивают: количество слов или номер конкретного слова в списке.
- Определите тип размещения. «Может встречаться любое количество раз или не встречаться совсем» — размещение с повторениями, база . «Все буквы различны» — без повторений, база .
- Разберите каждый запрет отдельно и определите приём: «ровно один раз» — разбиение на случаи по позиции особой буквы; «хотя бы один раз» или «не более» — часто удобнее через дополнение (общее минус плохие); запрет на соседние буквы — динамика по позициям.
- Если запретов несколько и они переплетаются («не более одной буквы У И нет двух А подряд») — не пытайтесь найти одну формулу. Либо стройте динамику с несколькими состояниями сразу, либо (быстрее и надёжнее) переходите к перебору программой.
- Оцените порядок числа . Если оно в пределах нескольких миллионов — смело пишите перебор на Python с фильтром внутри цикла, это займёт меньше времени, чем аккуратный разбор случаев.
- Для вопроса «под каким номером» посчитайте (формулой или перебором с сортировкой), сколько слов стоит в списке раньше искомого, и прибавьте 1 — нумерация в этих заданиях всегда начинается с 1, а не с 0.
- Проверьте порядок величины ответа на маленьком варианте той же задачи (уменьшите до 2–3 и посчитайте вручную или в уме) и запишите итоговое целое число без пробелов и лишних символов.
Доведите приёмы до автоматизма
Прорешайте 15–20 задач подряд — и выбор между формулой, разбиением на случаи и перебором программой станет очевидным с первого чтения условия.
Примеры с разбором
Пример 1. Ровно одна особая буква — разбиение на случаи
Условие (реальное задание из открытого банка ФИПИ):
Игорь составляет таблицу кодовых слов для передачи сообщений, каждому сообщению соответствует своё кодовое слово. В качестве кодовых слов Игорь использует трёхбуквенные слова, в которых могут быть только буквы Ш, К, О, Л, А, причём буква К появляется ровно 1 раз. Каждая из других допустимых букв может встречаться в кодовом слове любое количество раз или не встречаться совсем. Сколько различных кодовых слов может использовать Игорь?
Решение:
Алфавит — 5 букв (Ш, К, О, Л, А), слово из позиций. Буква К должна встретиться ровно один раз — это разбиение на случаи по позиции особой буквы.
Шаг 1. Выбираем позицию для буквы К — она может стоять на 1-м, 2-м или 3-м месте: способа (правило суммы).
Шаг 2. Каждая из двух оставшихся позиций заполняется любой из четырёх букв Ш, О, Л, А (букву К туда ставить нельзя — иначе она встретится больше одного раза): вариантов (правило произведения, размещение с повторениями).
Шаг 3. По правилу произведения объединяем выбор позиции и заполнение остальных мест:
from itertools import product
count = 0
for w in product('ШКОЛА', repeat=3):
if w.count('К') == 1:
count += 1
print(count) # 48Ответ: 48.
Проверка здравым смыслом: всего слов без ограничений , из них с ровно одной К — 48, это меньше общего числа, как и должно быть. Полный перебор программой (запущен и сверен) даёт тот же ответ.
Пример 2. Соседняя пара одинаковых цифр — разбиение по позиции пары
Условие (реальное задание из открытого банка ФИПИ):
Сколько существует различных четырёхзначных чисел, записанных в десятичной системе счисления, в записи которых есть ровно две одинаковые цифры, причём стоящие рядом?
Решение:
Условие «ровно две одинаковые цифры, стоящие рядом» означает: среди четырёх цифр числа есть пара одинаковых на соседних местах, а два оставшихся разряда отличаются и друг от друга, и от цифры пары (иначе одинаковых цифр стало бы больше двух). Пара соседних позиций может стоять на местах 1–2, 2–3 или 3–4 — три случая, и они не пересекаются (правило суммы).
Случай «1–2». Цифра пары стоит на первом месте, поэтому — вариантов. Третья и четвёртая цифры — различные и не равны : варианта. Итого .
Случай «2–3». Если , первая цифра — любая из 9 ненулевых, последняя — любая из 8 оставшихся: . Если (9 вариантов), первая цифра ненулевая и не равна — 8 вариантов, последняя не равна ни , ни первой — тоже 8: . Итого .
Случай «3–4». Рассуждение симметрично случаю «1–2»: тоже .
from collections import Counter
count = 0
for n in range(1000, 10000):
s = str(n)
c = Counter(s)
if sorted(c.values()) != [1, 1, 2]:
continue
d = [k for k in c if c[k] == 2][0]
if any(s[i] == s[i + 1] == d for i in range(3)):
count += 1
print(count) # 1944Ответ: 1944.
Проверка здравым смыслом: три случая дали одинаковое число 648 — и это ожидаемо, все три позиции пары равноправны по количеству степеней свободы у оставшихся цифр. Полный перебор программой по всем 9000 четырёхзначным числам (запущен и сверен) даёт тот же ответ.
Пример 3. Два запрета сразу — жадное построение и перебор
Условие (реальное задание из открытого банка ФИПИ):
Все пятибуквенные слова, в составе которых могут быть только русские буквы П, А, Р, У, С, записаны в алфавитном порядке и пронумерованы начиная с 1. Ниже приведено начало списка.
1. ААААА
2. ААААП
3. ААААР
4. ААААС
5. ААААУ
6. АААПА
…Под каким номером в списке идёт последнее слово, которое содержит не более одной буквы У и не содержит букв А, стоящих рядом?
Решение:
Здесь два запрета одновременно («не более одной У» и «нет двух А подряд») — под одну формулу разбиения на случаи это уложить трудно. Задача просит не количество слов, а номер последнего подходящего слова — то есть самого «старшего» по алфавиту среди тех, что удовлетворяют обоим условиям. Алфавит в порядке возрастания: А, П, Р, С, У.
Шаг 1. Строим искомое слово жадно, слева направо, ставя на каждое место максимально возможную по алфавиту букву, при которой оставшиеся условия ещё выполнимы:
- 1-е место: самая старшая буква — У, и одна У разрешена. Ставим У. Букву У больше использовать нельзя.
- 2–5-е места: следующая по старшинству буква — С, а на неё ограничений нет (запрет только на букву А). Ставим С на все четыре оставшихся места.
Получили слово УСССС: одна У, ни одной А — оба условия выполнены, и большего по алфавиту подходящего слова не существует (любая замена буквы правее на более старшую либо повторяет У, либо невозможна, так как С уже максимальна среди оставшихся).
Шаг 2. Находим номер УСССС в списке. Пронумеруем буквы по возрастанию: А=0, П=1, Р=2, С=3, У=4. Тогда слово превращается в пятизначное число в пятеричной системе, а номер слова на единицу больше значения этого числа (слову ААААА с числом 0 соответствует номер 1). Цифры слова УСССС — 4, 3, 3, 3, 3:
from itertools import product
alpha = 'АПРСУ'
answer = 0
for i, w in enumerate(product(alpha, repeat=5), 1):
s = ''.join(w)
if s.count('У') <= 1 and 'АА' not in s:
answer = i
print(answer) # 2969Ответ: 2969.
Проверка здравым смыслом: всего пятибуквенных слов , а последнее подходящее слово стоит под номером 2969 — до него в списке есть ещё и другие слова, не прошедшие фильтр (например, УУААА с двумя У), поэтому номер меньше 3125, как и должно быть. Программа, перебравшая все слов и запомнившая номер последнего подходящего, подтверждает ответ независимо от ручного построения.
Типичные ошибки и ловушки
Спутали размещения с повторениями и без
Условие «может встречаться любое количество раз» даёт , а условие «буквы различны» — совсем другую формулу, . Спутать их — значит получить ответ, который либо сильно завышен, либо сильно занижен. Перед вычислением найдите в условии точную фразу про повторения.
«Ровно один раз» посчитали как «хотя бы один раз»
Это разные условия и разные формулы. «Ровно один раз» — это (выбор позиции, остальные места без особой буквы). «Хотя бы один раз» — это (общее минус слова совсем без этой буквы). Числа получаются разные, и эталон примет только правильное.
Забыли, что позиция особой буквы — это тоже выбор
В формуле множитель — не опечатка и не константа «для красоты», а число способов расположить особую букву в слове. Забыть его — значит занизить ответ ровно в раз.
Применили разбиение на случаи к запрету на соседство
Запреты «нет двух гласных подряд» или «не встречаются рядом две одинаковые цифры» зависят от каждой пары соседних букв сразу, и разбить их на несколько непересекающихся случаев по одной позиции обычно не получается без потери или задвоения вариантов. Здесь нужна динамика по позициям: считать слова, оканчивающиеся на букву каждого класса, шаг за шагом.
Считали первую цифру числа наравне с остальными
В задачах про N-значные числа (не слова!) первая цифра не может быть нулём — для неё всегда на один вариант меньше, чем для остальных разрядов. В примере 2 выше это учтено отдельным разбором внутри каждого случая; забыть про это — типичная причина завышенного ответа.
Начали нумерацию слов в списке с 0
Если условие пронумеровало слова «начиная с 1», то первое слово алфавитного списка получает номер 1, а не 0. При переводе слова в число системы счисления это число — на единицу меньше искомого номера: не забудьте прибавить 1 в самом конце.
Перебор без оценки числа вариантов
Написать перебор проще, чем формулу, но если не прикинуть заранее порядок , можно потратить время на программу, которая не досчитает за отведённое время. Прежде чем писать цикл, прикиньте — миллионы или сотни триллионов вариантов предстоит перебрать.
Спутали задание 8 с заданием 11
У них общий код кодификатора 2.2, но в задании 11 количество сообщений уже дано в условии и нужно найти объём информации через , а в задании 8, наоборот, нужно посчитать само количество вариантов N. Если в условии есть слово «бит» или «информационный объём» — это, скорее всего, уже не задание 8.
Как задание 8 связано с остальным экзаменом
КЕГЭ по информатике — это 27 заданий с кратким ответом и максимальный первичный балл 29; частей в работе нет, все задания выполняются и проверяются автоматически. Задание 8 занимает в этой конструкции характерное место:
- оно входит в раздел «Теоретические основы информатики» — самый большой раздел кодификатора, 11 заданий и 11 первичных баллов;
- делит код кодификатора 2.2 с заданием 11 — там та же тема «измерение количества информации», но повышенный уровень и формула вместо прямого подсчёта вариантов. Готовить эти два задания удобно парой, чтобы не путать «посчитать количество слов» и «посчитать объём информации по известному количеству сообщений»;
- соседствует по теме объёма информации с заданием 7 (КЭС 2.6, объём памяти для графики и звука) — оба задания про измерение информации, но разными методами;
- комбинаторные приёмы задания 8 — правило произведения, разбиение на случаи, полный перебор — напрямую пригождаются в заданиях 19–21 (анализ игр), где тоже нужно быстро прикинуть число вариантов ходов.
План подготовки на 2 недели
Неделя 1 — базовые формулы
День 1–2: отработайте правило произведения и на задачах без ограничений — просто слова из алфавита заданного размера. День 3–4: добавьте условие «все буквы различны» и потренируйтесь отличать от по формулировке. День 5–7: разберите разбиение на случаи для условия «буква встречается ровно один раз» — обязательно решайте и формулой, и полным перебором на Python, сверяя результат: так вы сразу увидите, если формула применена неверно.
Неделя 2 — сложные запреты и скорость
День 1–2: освойте приём «от общего числа вычесть плохие» для условий «хотя бы один раз» и «не более». День 3–4: разберите динамику по позициям на запрете соседства (гласные/согласные, одинаковые цифры подряд) — постройте таблицу вручную хотя бы один раз, прежде чем перекладывать на код. День 5: потренируйтесь на задачах «под каким номером», отдельно проверяя нумерацию с 1. День 6–7: решайте задания на время (4 минуты каждое) и держите в голове запасной план — если формула не идёт, сразу переходите на перебор программой, а не тратьте время на подбор случаев. Закрепите всё в тренажёре на заданиях из банка ФИПИ.
Проверьте себя на реальных заданиях
На Repet.ai собраны задания ЕГЭ по информатике из открытого банка ФИПИ. Решайте онлайн, проверяйте ответ мгновенно и разбирайте решение — бесплатно.
Часто задаваемые вопросы
Элемент содержания 2.2 «Измерение количества информации» из раздела «Теоретические основы информатики». На практике это задачи на комбинаторику: сколько существует слов, чисел или кодов заданной длины из данного алфавита при дополнительных условиях (запрет на соседство букв, ограничение числа вхождений какой-то буквы и подобные).
1 первичный балл по принципу «всё или ничего»: ответ либо полностью совпадает с эталоном, либо задание оценивается в 0 (частичный зачёт на КЕГЭ есть только у заданий 26 и 27). Уровень сложности — базовый, задание не требует специализированного ПО и файл к нему не прилагается.
Если условие говорит, что буква «может встречаться любое количество раз или не встречаться совсем», используется формула k^n, где k — размер алфавита, n — длина слова: каждая позиция заполняется независимо. Если условие требует, чтобы все буквы в слове были различны, вариантов на второй позиции уже на один меньше, на третьей — ещё на один меньше, и формула превращается в произведение k·(k−1)·(k−2)·….
Разбиением на случаи по позиции особой буквы: сначала выбираем, на каком из n мест она стоит (n способов), а остальные n−1 позиций заполняем любой из оставшихся k−1 букв алфавита. Итоговая формула — n·(k−1)^(n−1). Не путайте это условие с «хотя бы один раз» — для него формула другая: k^n − (k−1)^n.
Формула k^n здесь не работает, потому что допустимость буквы зависит от соседней. Нужна динамика по позициям: посчитать отдельно, сколько слов каждой длины оканчивается на букву каждого класса (например, на гласную и на согласную), и выразить числа для следующей позиции через числа для предыдущей. Это надёжный способ для запретов на соседство; для небольших k^n тот же результат даёт и полный перебор программой.
Да, это законный и рабочий приём — на КЕГЭ доступна среда программирования. Модуль itertools.product перебирает все k^n слов, а внутри цикла достаточно проверить условие и посчитать подходящие. Перебор надёжнее формулы, когда условие содержит несколько переплетающихся запретов, но годится только пока k^n не превышает нескольких миллионов — для более длинных слов и больших алфавитов нужна формула.
У них общий код кодификатора 2.2, но разные задачи. В задании 8 нужно посчитать само количество вариантов (слов, чисел, кодов) — это комбинаторика. В задании 11 количество сообщений уже дано, и нужно найти информационный объём по формуле I = log2 N — это повышенный уровень сложности, а не базовый.
Нужно определить, сколько слов в алфавитном списке стоит раньше искомого, и прибавить 1 (если нумерация начинается с 1, как указано в условии). Удобный приём — занумеровать буквы алфавита по возрастанию цифрами 0, 1, 2… и превратить слово в число в системе счисления с основанием, равным размеру алфавита: значение этого числа равно количеству слов до искомого.
Готовы закрыть балл базового уровня?
Задание 8 решается быстро, если сразу видеть, какой приём подходит: формула, разбиение на случаи, динамика по позициям или перебор программой. Отработайте это на реальных заданиях из открытого банка ФИПИ с мгновенной проверкой ответа.