Есть полная колода из 52-х карт, без джокеров. Сколькими способами можно выбрать из этой колоды 6 карт так, чтобы в этом наборе были представлены все 4 масти?
Решение
Понятно, что раз карт 6, а мастей 4, то какие-то масти обязательно будут повторяться. Возможны два варианта: либо какая-то масть будет встречаться 3 раза (т.е. 3-1-1-1), либо две масти будут повторяться по два раза (т.е. 2-2-1-1), и других вариантов нет. Это позволяет нам посчитать по отдельности эти два класса.
Сначала рассмотрим вариант с 3 картами одной масти. Сначала мы выбираем "длинную" масть, для этого у нас есть $C^1_4$ варианта. После этого нам нужно выбрать любые 3 карты этой масти, что можно сделать $C^3_{13}$ способами. Наконец, из каждой из оставшихся трёх мастей мы выбираем по одной карте, т.е. трижды по $C^1_{13}$. Общее число способов составить набор вида 3-1-1-1, таким образом, равно$$
P_1 = C^1_4 \cdot C^3_{13} \cdot \left(C^1_{13}\right)^3
= 4 \cdot \frac{13!}{3!10!} \cdot 13^3
= 4 \cdot \frac{10!\cdot11\cdot12\cdot13}{6\cdot10!}\cdot 13^3
= 88\cdot13^4
$$Теперь посчитаем варианты во втором классе. Сначала мы выбираем те две масти, в которых будет по две карты (это $C^2_4$ способа). После этого мы выбираем по две карты из каждой из них (дважды по $C^2_{13}$) и по одной из оставшихся (два раза по $C^1_{13}$).$$
P_2 = C^2_4 \cdot \left(C^2_{13}\right)^2 \cdot \left(C^1_{13}\right)^2
=6 \cdot \left( \frac{13!}{2!11!} \right)^2 \cdot 13^2=$$ $$
=6 \cdot \left( \frac{11!\cdot12\cdot13}{2\cdot11!}\right)^2 \cdot 13^2
=6^3 \cdot 13^4 = 216\cdot13^4
$$
Как мы уже заметили, эти два класса не пересекаются, поэтому количество всех способов выбрать 6 карт, задействовав все 4 масти, равно$$
P = P_1 + P_2 = 88\cdot13^4 + 216\cdot13^4 = 304\cdot13^4 = 8682544$$
Решение
Понятно, что раз карт 6, а мастей 4, то какие-то масти обязательно будут повторяться. Возможны два варианта: либо какая-то масть будет встречаться 3 раза (т.е. 3-1-1-1), либо две масти будут повторяться по два раза (т.е. 2-2-1-1), и других вариантов нет. Это позволяет нам посчитать по отдельности эти два класса.
Сначала рассмотрим вариант с 3 картами одной масти. Сначала мы выбираем "длинную" масть, для этого у нас есть $C^1_4$ варианта. После этого нам нужно выбрать любые 3 карты этой масти, что можно сделать $C^3_{13}$ способами. Наконец, из каждой из оставшихся трёх мастей мы выбираем по одной карте, т.е. трижды по $C^1_{13}$. Общее число способов составить набор вида 3-1-1-1, таким образом, равно$$
P_1 = C^1_4 \cdot C^3_{13} \cdot \left(C^1_{13}\right)^3
= 4 \cdot \frac{13!}{3!10!} \cdot 13^3
= 4 \cdot \frac{10!\cdot11\cdot12\cdot13}{6\cdot10!}\cdot 13^3
= 88\cdot13^4
$$Теперь посчитаем варианты во втором классе. Сначала мы выбираем те две масти, в которых будет по две карты (это $C^2_4$ способа). После этого мы выбираем по две карты из каждой из них (дважды по $C^2_{13}$) и по одной из оставшихся (два раза по $C^1_{13}$).$$
P_2 = C^2_4 \cdot \left(C^2_{13}\right)^2 \cdot \left(C^1_{13}\right)^2
=6 \cdot \left( \frac{13!}{2!11!} \right)^2 \cdot 13^2=$$ $$
=6 \cdot \left( \frac{11!\cdot12\cdot13}{2\cdot11!}\right)^2 \cdot 13^2
=6^3 \cdot 13^4 = 216\cdot13^4
$$
Как мы уже заметили, эти два класса не пересекаются, поэтому количество всех способов выбрать 6 карт, задействовав все 4 масти, равно$$
P = P_1 + P_2 = 88\cdot13^4 + 216\cdot13^4 = 304\cdot13^4 = 8682544$$
Я считал по-другому, но ответ такой же. Вот мое решение:
ОтветитьУдалить# Факториал.
def fac(n):
res = 1
for i in xrange(2, n + 1):
res = res * i
return res
# C из n по k.
def c(n, k):
return fac(n) / fac(k) / fac(n - k)
# Сколькими способами можно выбрать 6 карт одной масти из
# колоды, в которой m мастей (13 карт каждой масти).
def v1(m):
return m * c(13, 6)
# Сколькими способами можно выбрать 6 карт двух мастей из
# колоды, в которой m мастей.
def v2(m):
return c(m, 2) * (c(26, 6) - v1(2))
# Сколькими способами можно выбрать 6 карт трех мастей из
# колоды, в которой m мастей.
def v3(m):
return c(m, 3) * (c(39, 6) - v2(3) - v1(3))
# Сколько всего способов выбрать 6 кари из полной колоды.
total = c(52, 6)
# Сколькими способами можно выбрать 6 карт четырех мастей из
# полной колоды.
result = total - v3(4) - v2(4) - v1(4)
Еще я перебором проверил, что ответ правильный. Программка на C++:
#define FOR(i, n) for (int i = 0; i != n; ++i)
int s(int c) {
return 1 << (c / 13);
}
int main() {
int res = 0;
FOR(i1, 52) FOR(i2, i1) FOR(i3, i2) FOR(i4, i3) FOR(i5, i4) FOR(i6, i5) {
if ((s(i1) | s(i2) | s(i3) | s(i4) | s(i5) | s(i6)) == 15)
++res;
}
std::cout << res << std::endl;
}