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

Александр составляет пары слов. Первое 3-буквенное слово состоит из букв М, О, Д, а второе 4-буквенное из букв С, П, И, Н. Каждая из букв может встречаться в словах любое количество раз или не встречаться вовсе. Сколько различных пар слов может составить Александр?

В первом слове на каждое из 3 мест в слове можно поставить любую из 3 различных букв. Значит первое слово можно составить 3 ⋅ 3 ⋅ 3 = 27  способами. Во втором слове на каждое из 4 мест в слове можно поставить любую из 4 различных букв. Значит второе слово можно составить 4 ⋅ 4 ⋅ 4 ⋅ 4 = 256  способами.

Представим, что первые слова — чашки, а вторые слова — блюдца. Сколько различных вариаций кружка+чашка можно составить?

Можно составить 27 ⋅ 256 = 6912  различных пар слов (блюдец с чашкой).
Решение программой (циклы):

ans = set()
alf1 = ’МОД’
alf2 = ’СПИН’

for x1 in alf1:
    for x2 in alf1:
        for x3 in alf1:
            w1 = x1 + x2 + x3
            for y1 in alf2:
                for y2 in alf2:
                    for y3 in alf2:
                        for y4 in alf2:
                            w2 = y1 + y2 + y3 + y4
                            ans.add((w1, w2))
print(len(ans))

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

from itertools import product

ans = set()
alf1 = ’МОД’
alf2 = ’СПИН’

for x in product(alf1, repeat=3):
    for y in product(alf2, repeat=4):
        ans.add((x, y))

print(len(ans))

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