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

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

(Е. Усов) Леся составляет словосочетания длины \(5\) из пробела и букв своего имени. При этом никакие две гласные и две согласные не стоят рядом. Словосочетанием считается два слова, разделённых между собой пробелом. Слова не обязательно должны быть осмысленными словами русского языка. Сколько различных словосочетаний может составить Леся?

Решение:

$$3 \cdot 4^2 \cdot 2^2 = 192$$

Или программно

Python


from itertools import product, permutations

words = set()
cons = 'ЛС'
vow = 'ЕЯ'
for p in product('ЛЕСЯ', repeat=4):
    for perm in permutations(list(p) + [' ']):
        if perm[0] != ' ' and perm[-1] != ' ' \
                and not any((x in cons and y in cons) or (x in vow and y in vow) for x, y in zip(perm, perm[1:])):
            words.add(''.join(perm))
print(len(words))

Ответ: \(192\)