Задание №8: Комбинаторика и подсчёт вариантов слов
Основные типы и прототипы задания №8:
Слова с фиксированным алфавитом
Слова в алфавитном порядке
Ограничения на гласные/согласные
Условие задания
(Д. Паршиков) Алиса составила все пятибуквенные слова из букв П, Р, И, В, Ы, Ч, К, А, записала их в алфавитном порядке и пронумеровала. После этого Алиса удалила каждое пятое слово и пронумеровала новый список. Вот начало списка после удаления слов:
1. АААААПод каким номером идет первое слово, состоящее только из согласных букв, где все буквы различные?
2. ААААВ
3. ААААИ
4. ААААК
5. ААААР (слово ААААП удалено)
...
Ответ:
4754
Шаблон решения на Python
# === Задание 8: Комбинаторика и списки слов ===
from itertools import product
words = [''.join(p) for p in product('АПРЕЛЬ', repeat=5)]
words.sort()
count = 0
for idx, w in enumerate(words, start=1):
# Условие из задачи:
if w.count('Ь') <= 1 and not ('А' in w and 'Е' in w):
count += 1
print("Подходящих слов:", count)