Условия задачи таковы. Есть "этот берег" и "тот берег". Джон, его сестра, его отец и его дед находятся на этом берегу. Им всем нужно перебраться на тот берег, но у них есть всего лишь 17 минут. Джон сам по себе перебирается с одного берега на другой за 1 минуту, его сестра — за 2 минуты, его отец — за 5 минут и его дед — за 10 минут. Мост выдерживает не более двух человек одновременно. Без фонаря идти по мосту невозможно (к счастью, есть фонарь, который можно передавать). Если по мосту идут двое, то они должны идти на скорости более медленного ходока. Как при соблюдении всех этих условий всем перебраться на тот берег за указанное время?
Вы видите, что задача как бы решена.
Проблема, собственно, в том, что автор никоим образом не указал, как он её решил. Непонятно, как прийти к такому решению.
Вопрос. Как же решать задачи такого типа? Допустим, что к тому же нам неизвестно данное 17 минут. Сказано только, что четыре человека должны перебраться за наименьшее возможное время.
Каков алгоритм решения такой головоломки, от чего плясать?
Плюс хотелось бы ещё понять, как действовать, например, если изменить пределы для данных. Например, изначально было пять, шесть человек и т. д.
Как бы там ни было, хочется попытаться данную задачу обобщить, вывести общий алгоритм, если это возможно.