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

Аня составляет 6-буквенные слова из букв П, О, С, Т, У, Л, Е, Н, И. Каждая из букв может встречаться в слове ровно один раз или не встречаться вовсе, причём буква О в слове должна стоять второй. Сколько различных слов может составить Аня?

Аня ставит на второе место букву О. На первое место она ставит любую из 8 оставшихся букв, т.к. 1 буква уже использована. По той же логике, на третье — одну из 7 оставшихся, на четвертое — одну из 6 оставшихся, на пятое — одну из 5 оставшихся и на последнее место она ставит одну из 4 оставшихся букв. Всего Аня может составить 8 ⋅ 1 ⋅ 7 ⋅ 6 ⋅ 5 ⋅ 4 = 6720  различное слов.
Решение программой (циклы):

ans = set()
alf = ’ПОСТУЛЕНИ’

for x1 in alf:
    for x2 in alf:
        for x3 in alf:
            for x4 in alf:
                for x5 in alf:
                    for x6 in alf:
                        w = x1 + x2 + x3 + x4 + x5 + x6
                        if len(w) == len(set(w)) and x2 == ’О’:
                            ans.add(w)
print(len(ans))

Решение программой (itertools):

from itertools import permutations

ans = set()
alf = ’ПОСТУЛЕНИ’

for x in permutations(alf, 6):
    if x[1] == ’О’:
        ans.add(x)

print(len(ans))

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