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

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

(М. Шагитов) Марат составляет \(8\)-буквенные коды из букв, входящих в слово ГАЛАКТИКА. Первая буква кода должна быть согласной, а последняя — гласной. Код НЕ должен содержать ни одной пары соседних букв, которые следуют друг за другом в русском алфавите в том же порядке (например, "АБ" или "ЮЯ"). Сколько различных кодов может составить Марат?

Решение:

Python


from itertools import product

words = set()
for p in product(set('ГАЛАКТИКА'), repeat=8):
    b1 = 'АИ'
    b2 = 'ГЛКТ'
    s = ''.join(p)
    if s[0] in b2 and s[-1] in b1\
        and all(ord(y) - ord(x) != 1  for x, y in zip(s, s[1:])):
        words.add(s)
print(len(words))

Ответ: \(309268\)