Задача с сайта https://kpolyakov.spb.ru/
Все четырёхбуквенные слова, составленные из букв ГОРА, записаны в алфавитном порядке и пронумерованы, начиная с 1. Начало списка выглядит так:
1. AAAA
2. ПААГ
3. AAAO
4. AAAР
5. ААГА
Под каким номером в списке идёт первое слово, в котором нет буквы А?
from itertools import * # Импорт модуля itertools для работы с комбинаторикой
a = ’АГОР’ # Заданная строка с символами
c = 0 # Счётчик для нумерации всех комбинаций
# Генерация всех возможных комбинаций длины 4 из символов ’АГОР’
t = product(a, repeat=4)
for i in t: # Перебор всех комбинаций
s = ’’.join(i) # Преобразование кортежа в строку
c += 1 # Увеличение счётчика для нумерации текущей комбинации
if not ’А’ in s: # Проверка, что в комбинации отсутствует символ ’А’
# Вывод номера комбинации и самой комбинации, если условие выполнено
print(c, s)
Ответ: 86