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

Борис составляет 5-буквенные слова из букв Ш, А, Л, Ы, К. Каждая из букв может встречаться в слове любое количество раз или не встречаться совсем, причём первой буквой не может быть гласная. Сколько различных слов может составить Борис?

Первой буквой Борис может поставить любую из букв, кроме гласных А и Ы, т.е. одну из 3 букв Ш, Л, К. На остальные 4 места Борис ставит любую из 5 букв. Всего Борис может составить 3 ⋅ 5 ⋅ 5 ⋅ 5 ⋅ 5 = 1875  различных слов.
Решение программой (циклы):

ans = set()
alf = ’ШАЛЫК’

for x1 in alf:
    for x2 in alf:
        for x3 in alf:
            for x4 in alf:
                for x5 in alf:
                    w = x1 + x2 + x3 + x4 + x5
                    if x1 not in ’АЫ’:
                        ans.add(w)
print(len(ans))

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

from itertools import product

ans = set()
alf = ’ШАЛЫК’

for x in product(alf, repeat=5):
    if x[0] not in ’АЫ’:
        ans.add(x)

print(len(ans))

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