- •Конкретная математика. Лекция 1. Возвратные задачи. Задача о ханойской башне.
- •Задача о разрезании пиццы.
- •Задача Иосифа Флавия.
- •Конкретная математика. Лекция 2. Вычисление конечных сумм, часть 1. Обозначения сумм.
- •Метод суммирующего множителя.
- •Обобщение задачи разрезания плоскости на n-мерное пространство.
- •Конкретная математика. Лекция 3. Вычисление конечных сумм, часть 2. Метод приведения.
- •Метод усложнения и упрощения.
- •Метод конечных разностей.
Конкретная математика. Лекция 1. Возвратные задачи. Задача о ханойской башне.
Задача состоит в том, чтобы переместить всю башню их 8 дисков на один из других колышков, перенося каждый раз только один диск и не помещая больший диск на меньший.
Наилучший способ разрешить вопрос, подобный нашему,— несколько обобщить его. Посмотрим, что будет в случае n дисков. Одно из преимуществ такого рода обобщения состоит в том, что можно будет даже еще уменьшить размер задачи. Полезно вначале рассмотреть крайние случаи. Совершенно ясно, как перемещать башню, состоящую только из одного или двух дисков, а после нескольких попыток становится понятно, как перемещать башню из трех дисков. Следующий шаг в решении задачи —выбор подходящего обозначения: обозначай и властвуй. Будем говорить, что Тn есть минимальное число перекладываний, необходимых для перемещения n дисков с одного колышка на другой по правилам . Тогда T1, очевидно, равно 1, а Т2 равно 3. Можно получить дополнительную информацию, причем совершенно бесплатно, если рассмотреть самый крайний случай: ясно, что Т0 = 0, поскольку для перемещения башни из n=0 дисков вообще не требуется ни одного перекладывания! Но давайте теперь изменим точку зрения и попробуем подумать о главном — как переместить высокую башню? Эксперименты с тремя дисками показывают, что решающая идея состоит в переносе двух верхних дисков на средний колышек; затем переносится третий диск и на него помещаются два других. Это дает ключ к общему правилу перемещения n дисков: сначала мы перемещаем n— 1 меньших дисков на любой из колышков (что требует Tn-1 перекладываний), затем перекладываем самый большой диск (одно перекладывание) и, наконец, помещаем n— 1 меньших дисков обратно на самый большой диск (еще Tn-1 перекладыва-
ний). Таким образом, n
дисков (при n > 0) можно
переместить самое большее за 2Tn-1
+ 1 перекладываний: Tn
<= 2Tn-1 + 1. Нет
ли более короткого пути? Оказывается,
что нет. На некотором этапе мы обязаны
переместить самый большой диск. Когда
мы это делаем, n — 1 меньших
дисков должны находиться на одном
колышке, а для того чтобы собрать их
вместе, потребуется по меньшей мере
Tn-1 перекладываний.
Самый большой диск можно перекладывать
и более одного раза, если мы не очень
расторопны. Но после перемещения самого
большого диска в последний раз мы обязаны
поместить n — 1 меньших
дисков (которые опять должны находиться
на одном колышке) обратно на наибольший
диск, что также требует Tn-1
перекладываний. Следовательно¸ Tn
>=2Tn-1 + 1. Это
значит, что Tn =2Tn-1
+ 1.
(1.1) - совокупность подобных равенств
называется рекуррентным соотношением.
Найдём прямую формулу. T0 = 0, T1
= 1, T2 = 3, T3 = 7, T4 = 15, T5=
31, T6 = 63. Очень похоже на 2n-1.
Для произвольного номера n
это можно доказать с помощью метода
математической индукции.
Математическая индукция — это общий способ доказательства, что некоторое утверждение о целом числе n справедливо при любом n >= n0. Сначала данное утверждение доказывается, когда n принимает свое наименьшее значение, n0; это называется базой или основанием. Затем данное утверждение доказывается для n > n0, в предположении, что оно уже доказано для всех п между n0 и n — 1 включительно; это называется индукцией или индуктивным переходом. Такого рода доказательство позволяет получить бесконечное число результатов при конечном объеме работы. В нашем случае база индукции тривиальна, поскольку Т0 = 20 —1 = 0, а индуктивный переход выполняется для n > 0, когда n заменяется на n — 1: Tn = 2Tn-1 + 1 = 2(2n-1-1)+ 1 = 2n-1. Следовательно, общая формула доказана для любого n =1,2,3….
