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

Друг составляет пары чисел, используя цифры от 1  до 7  . Первое число состоит из 3  цифр, а второе — из 5  . Цифры в каждом из чисел могут повторяться, причём второе число состоит только из нечётных цифр. Сколько различных пар чисел друг может составить?

В первом числе друг может поставить на каждую из 3 позиций любую из 7 цифр. Значит первое число можно составить 7 ⋅ 7 ⋅ 7 = 343  различными способами. Во втором числе на каждой из 5 позиций может стоять одна из 4 нечётных цифр. Значит второе число можно составить 4 ⋅ 4 ⋅ 4 ⋅ 4 ⋅ 4 = 1024  различными способами.

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

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

ans = set()
alf1 = ’1234567’
alf2 = ’1357’

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:
                            for y5 in alf2:
                                w2 = y1 + y2 + y3 + y4 + y5
                                ans.add((w1, w2))
print(len(ans))

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

from itertools import product

ans = set()
alf1 = ’1234567’
alf2 = ’1357’

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

print(len(ans))

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