Похождения Сильвера продолжаются! Как-то раз возникла такая задача...
Берег, где нужно забрать абордажную команду после атаки на Маракайбо, представляет собой прямую линию. Сильвер во главе команды выбирает место, где они ждут корабль, точнее, шлюпку. На этой шлюпке они плывут к другому кораблю, севшему на мель неподалеку, чтобы его ограбить. Корабль может в любой момент сойти с мели, поэтому путь шлюпки до берега и потом до обреченного судна должен быть кратчайшим.
Эту задачу можно решать тремя способами. Можно выбрать произвольно координаты, записать в них уравнение прямой, которая изображает берег; определить координаты точек, в которых находятся корабли; выписать выражение для длин отрезков в зависимости от точки на берегу. Получится задача оптимизации функции двух координат точки на берегу с ограничением, что точка лежит на данной прямой. Метод Лагранжа позволит эту задачу решить. Задачка для второго курса.
Подход трудоемок, но его преимущество --- прямолинейность берега, да и пути шлюпки, большой роли не играет.
Второй способ --- выбрать удобные координаты. Берег примем за ось абсцисс, а вторую ось проведем через корабль Сильвера. Тогда точка рандеву задается одной координатой, и можно обойтись задачей минимизации функции одной переменной, и без ограничений. Задачка для первого курса или продвинутого старшеклассника.
Третий способ красив и прост, и доступен кому угодно. Его Сильвер и выбрал, избавившись от неоходимости писать формулы на песке палкой или решать уравнения в уме. К тому же в его времена дифференциальное исчисление еще не было разработано.
Сильвер применил свойство симметрии --- не изменять расстояния (это называется "изометрия"). Точка, где атакуемый корабль, отражается зеркально относительно прямолинейного берега. Путь до точки рандеву и потом по суше до построенной симметричной точки равен пути до точки рандеву и потом, морем, до атакуемого корабля.
Баркасы не плавают по суше? И не надо!
Кратчайший путь до отражения --- прямой. Собственно, все на этом.
Вторая задачка. Капитан атакованного корабля был взят в плен и сидел в кубическом карцере в трюме. Обращались с ним неплохо, Сильвер частенько беседовал с ним, в том числе и об этой задаче. И вот, лежа на полу, капитан наблюдал за улиткой, которая ползала по полу и стенам карцера.
Кратчайший путь из угла на полу в противоположный угол у потолка --- прямой, по диагонали куба. Это √3 при единичной длине ребра куба. Но улитка так не умеет, так смогла бы муха или попугай.
Ползти по ребру и потом по диагонали дает 1+√2, что больше идеала процентов на 40 (39.38%). А меньше (хотя и больше, чем идеал) --- можно?
Задачу решает дифференциальное исчисление, конечно. Но можно проще, если воспользоваться очевидным фактом: развертка не меняет расстояний. Поэтому кратчайший путь по прямой на развертке, который проходит через середину ребра, дает кратчайший путь и в карцере.
Из развертки можно извлечь и значение: √5. Это на 29% больше идеала, и почти на 8% лучше предыдущей оценки (ребро+диагональ).
Капитан не может развалить карцер; но мысленно --- может, и это позволяет ему решить задачу.