А теперь вооружившись знаниями, вернемся к задаче, которую решал Эйлер.
Итак, задача звучит следующим образом: какие грузы можно взвесить с помощью гирь в 20, 21, 22,..., 2n грамм и сколькими способам?
Я не знаю, как долго Эйлер придумывал решение для этой задачи, но оно поражает своей неожиданностью. Посудите сами. Эйлер рассматривает произведение G(z) = (1+z)(1+z2)(1+z4)… которое после раскрытия скобок представляется в виде бесконечного ряда G(z) = 1 + g1z + g2z2 + g3z3 +….
Что же из себя представляют коэффициенты gk? Каждый gk — это коэффициент при zk, а zk — получается как произведение каких-то одночленов z2m, то есть gk — это в точности число разных представлений числа k в виде суммы некоторых из чисел 1, 2, 22, 23,..., 2m,…. Другими словами gk — это число способов взвешивания груза в k грамм заданными гирями. Как раз то, что мы искали!
Следующий шаг Эйлера поражает не менее предыдущего. Он умножает обе части равенства на (1-z).
(1-z)G(z) = (1-z)(1+z)(1+z2)(1+z4)(1+z8)…
(1-z)G(z) = (1-z2)(1+z2)(1+z4)(1+z8)…
(1-z)G(z) = (1-z4)(1+z4)(1+z8)…
(1-z)G(z) = 1
С одной стороны G(z) = 1 + g1z + g2z2 + g3z3 +… с другой стороны мы только что получили . Последнее равенство есть не что иное, как сумма геометрической прогрессии, которая равна . Сопоставляя эти два равенства, получаем g1 = g2 = g3 =… = 1, то есть любой груз в k грамм можно взвесить гирями в 1, 2, 4, 8,… грамм притом единственным способом.
Решение рекуррентных соотношений
Производящие функции подходят для решения не только комбинаторных задач. Оказывается, с их помощью можно решать рекуррентные соотношения.
Начнем со всеми знакомой последовательностью чисел Фибоначчи. Каждый из нас знает её рекуррентный вид: F0 = 0, F1 = 1, Fn = Fn-1 + Fn-2, n ≥ 2. Однако не каждый знает вид этой формулы в замкнутом виде и это не удивительно, ведь она содержит иррациональное число(«золотое сечение») в своём составе.
Итак, имеем
F0 = 0,
F1 = 1,
Fn = Fn-1 + Fn-2, n ≥ 2
Do'stlaringiz bilan baham: |