Задание 8. Информатика. ЕГЭ. Поляков-6343

Просмотры: 43
Изменено: 3 февраля 2025

*Мстислав составляет коды из букв, входящих в слово МСТИСЛАВ. Код должен состоять из \(5\) букв, буквы в коде не должны повторяться, согласных в коде должно быть больше, чем гласных, две гласные буквы нельзя ставить рядом. Сколько различных кодов может составить Мстислав?

Решение:

Python


from itertools import permutations

words = set()

for p in permutations('МСТИЛАВ', 5):
    s = ''.join(p)
    b1 = 'АИ'
    b2 = 'МСТЛВ'
    if sum(c in b2 for c in s) > sum(c in b1 for c in s) \
        and all(''.join(c) not in s for c in permutations(b1, 2)):
        words.add(s)

print(len(words))

Ответ: \(2040\)