Задача к ЕГЭ по информатике на тему «подсчет количества слов/чисел» №4

Таина составляет 6-буквенные слова перестановкой букв слова МАШИНА. При этом в слове буква А не может стоять на первом, а буква Ш не может стоять на последнем месте. Словом считается любая допустимая последовательность букв, не обязательно осмысленная. Сколько слов может составить Таина?

Решение через циклы

a = ’МАШИНА’
count = set()
for x1 in ’МШИН’:
    for x2 in a:
        for x3 in a:
            for x4 in a:
                for x5 in a:
                    for x6 in ’МАИНА’:
                        s = x1+x2+x3+x4+x5+x6
                        if len(set(s)) == 5 and s.count(’А’) == 2:
                            count.add(s)
print(len(count))

Решение через itertools

from itertools import permutations
count = 0
for x in permutations(’МАШИНА’):
    s = ’’.join(x)
    if s[0] != ’А’ and s[-1] != ’Ш’:
        count += 1
print(count/2)

Ответ: 204
Оцените статью
Я решу все!