Друг составляет пары чисел, используя цифры от 4 до 9. Оба числа состоят из 4 цифр. Каждая из цифр в первом числе может использоваться ровно 1 раз, а во втором любое количество раз, причём второе число не может начинаться с цифры 6, а первое с цифры 7. Сколько различных пар чисел друг может составить?
В первом числе друг может на первом месте поставить любую из цифр, кроме 7, всего таких цифр 5. На второе место можно поставить любую из 5 оставшихся цифр, т.к. одна из них уже стоит на первом месте. По той же логике, на третье место можно поставить любую из 4 оставшихся цифр, а на четвёртое — любую из 3 оставшихся. Значит первое число можно составить различными способами. Во втором числе на первом месте может стоять любая цифра, кроме 6, всего таких цифр 5. На каждой из оставшихся позиций может стоять любая из 6 цифр. Значит второе число можно составить
различными способами.
Представим, что первые числа — чашки, а вторые числа — блюдца. Сколько различных вариаций кружка+чашка можно составить?
Можно составить различных пар чисел (блюдец с чашкой).
Решение программой (циклы):
ans = set()
alf = ’456789’
for x1 in alf:
for x2 in alf:
for x3 in alf:
for x4 in alf:
w1 = x1 + x2 + x3 + x4
if len(w1) == len(set(w1)):
for y1 in alf:
for y2 in alf:
for y3 in alf:
for y4 in alf:
w2 = y1 + y2 + y3 + y4
if w1[0] != ’7’ and w2[0] != ’6’:
ans.add((w1, w2))
print(len(ans))
Решение программой (itertools):
from itertools import permutations, product
ans = set()
alf = ’456789’
for x in permutations(alf, 4):
for y in product(alf, repeat=4):
if x[0] != ’7’ and y[0] != ’6’:
ans.add((x, y))
print(len(ans))