Друг составляет пары чисел, используя цифры от до
. Первое число состоит из
цифр, а второе — из
. Цифры в каждом из чисел могут использоваться любое количество раз, причём второе число не содержит в себе чётных цифр. Сколько различных пар чисел друг может составить?
Примечание: в данной задаче число может начинаться с нуля.
В первом числе друг может на первое и второе место поставить по цифр. Значит первое число можно составить
различными способами. Во втором числе на каждой из позиций может стоять любая из 5 нечётных цифр. Значит второе число можно составить
различными способами.
Представим, что первые числа — чашки, а вторые числа — блюдца. Сколько различных вариаций чашка+блюдце можно составить?
Можно составить различных пар чисел (блюдец с чашкой).
Решение программой (циклы):
ans = set()
alf1 = ’0123456789’
alf2 = ’13579’
for x1 in alf1:
for x2 in alf1:
w1 = x1 + x2
for y1 in alf2:
for y2 in alf2:
for y3 in alf2:
for y4 in alf2:
for y5 in alf2:
for y6 in alf2:
for y7 in alf2:
w2 = y1 + y2 + y3 + y4 + y5 + y6 + y7
ans.add((w1, w2))
print(len(ans))
Решение программой (itertools):
from itertools import product
ans = set()
alf1 = ’0123456789’
alf2 = ’13579’
for x in product(alf1, repeat=2):
for y in product(alf2, repeat=7):
ans.add((x, y))
print(len(ans))