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

Некоторый алфавит содержит только 6 букв: П,Р,И,В,Е,Т. Школьники составляют кодовые слова длины 6, при этом буква Е встречается ровно два раза. Сколько различных слов могут составить ребята?

Решение руками:

Для двух букв в слове, рассмотрим пример, пусть две буквы Е занимают первые две позиции, тогда на остальных четырех позициях может стоять любая из 5ти букв.

Е Е 5 5 5 5

Вторая буква Е может стоять на любой из 5 позиции, если первая стоит на первой. Если первая Е стоит на второй позиции, то у второй буквы Е всего 4 варианта, так как если поставить вторую букву Е на первую позицию, то получим дубликат.

Посчитав по аналогии число перестановок Е получаем, что всего слов, в которых буква Е встречается 2 раза: (5+ 4 + 3+ 2+ 1)⋅5 ⋅5⋅5⋅5 = 15⋅54 = 9375  .

Решение программой (циклы):

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 w.count(’Е’) == 2:
                            ans.add(w)
print(len(ans))

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

from itertools import product

ans = set()
alf = ’ПРИВЕТ’

for w in product(alf, repeat=6):
    w = ’’.join(w)
    if w.count(’Е’) == 2:
        ans.add(w)
print(len(ans))

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