May 8, 2019

Решение задачи 484

Условие:

Длина взрослого червяка 1 метр. Если червяк взрослый, его можно разрезать на две части в любом отношении длин. При этом получаются два новых червяка, которые сразу начинают расти со скоростью 1 метр в час каждый. Когда длина червяка достигает метра, он становится взрослым и прекращает расти. Можно ли из одного взрослого червяка получить 10 взрослых червяков быстрее чем за час?

Решение:

Будем измерять длину червяков в минутах и секундах: длина взрослого червяка равна 60 минут, длина половины червяка равна 30 минут, и тд.

Попробуем уложиться за 59 минут 59 секунд.

Отрежем от большого червяка маленького червяка длиной 1 секунду. Этот маленький червячок успеет вовремя вырасти. Через секунду у нас будет червяк длиной 2 секунды и взрослый червяк. От взрослого отрежем червяка длиной 2 секунды, он опять же успеет вырасти вовремя.

Через 2 секунды (начиная с начала операций) у нас будет два червяка длиной 3 секунды и взрослый червяк. От взрослого червяка отрежем маленького длиной 3 секунды (он успеет вырасти вовремя).

Через 4 секунды (начиная с начала операций) у нас будет три червяка длиной 5 секунд и взрослый червяк. От взрослого отрежем червяка отрежем маленького длиной 5 секунд (он успеет вырасти вовремя).

Дальше по аналогичной схеме продолжаем процесс. Каждые 2ⁿ секунд будем от большого отрезать маленького длиной 2ⁿ+1 секунд. Таким образом через 2ⁿ секунд у нас будет n + 1 маленьких червяков длиной 2ⁿ+1 секунд, которые успеют вырасти вовремя, и взрослый червяк.

Значит, через 256 секунд у нас будут 9 потенциальных червяков и один взрослый. На это можно остановиться. К времени 59 минут 59 секунд у нас будет 10 взрослых червей.

Ответ: Да.

Примечание: Можно получить любое наперед заданное число червей быстрее чем за час.