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

Сколько слов можно составить из букв С, Т, О, Л, если каждое слово состоит из четырёх букв и в каждом слове есть по крайней мере одна буква О?

Подходящие четырёхбуквенные слова +  неподходящие четырёхбуквенные слова =  все четырёхбуквенные слова.

Из букв С, Т, О, Л возможно составить 4 ⋅4⋅4 ⋅4 = 256  четырёхбуквенных слов, так как на каждой позиции может стоять одна из четырёх букв.

Не подходят те четырёхбуквенные слова, в которых нет букв О. Их количество равно 3 ⋅3⋅3⋅3 = 81  , так как на каждой позиции может стоять одна из букв С, Т, Л.

Подходящие четырёхбуквенные =  все четырёхбуквенные слова − неподходящие четырёхбуквенные слова = 256− 81 = 175

 

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

ans = set()
alf = ’СТОЛ’

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

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

from itertools import product

ans = set()
alf = ’СТОЛ’

for w in product(alf, repeat=4):
    if ’О’ in w:
        ans.add(w)

print(len(ans))

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