Дэн Шорин (den_shorin) wrote,
Дэн Шорин
den_shorin

Вот тут лузеры из adme приводят задаваемые на собеседовании задачки. http://www.adme.ru/zhizn-nauka/10-zadach-s-sobesedova.. Меня порадовала одна из задач.

Итак:

У вас 50 мотоциклов с заполненным топливом баком, которого хватает на 100 км езды.
Вопрос: Используя эти 50 мотоциклов, как далеко вы сможете заехать (учитывая, что изначально они находятся в условно одной точке пространства)?

По мнению менеджеров adme решение такое:

Самый простой ответ: завести их все одновременно и проехать 100 км. Но есть и другое решение. Сначала переместите все мотоциклы на 50 км. Затем перелейте топливо из половины мотоциклов в другую половину. У вас таким образом — 25 мотоциклов с полным баком. Проедьте еще 50 км и повторите процедуру. Так можно забраться на 350 км (не учитывая того топлива, которое останется от «лишнего» мотоцикла при разделе 25 надвое).

Полагаю, собеседование в компанию Adobe (а именно там задают этот вопрос) ребята из adme.ru не прошли бы. Потому как задача решается следующим образом. Мы едем по дороге до тех пор пока в бензобаках 49 мотоциклов не появится пустого места столько же, сколько бензина в бензобаке 50-го мотоцикла. Потом бензин из 50 мотоцикла разливаем по остальным бензобакам, а этот мотоцикл бросаем. Повторяем этот алгоритм до тех пор, пока у нас не останется последний мотоцикл.

Полагаю, уравнения мои френды могут составить сами в качестве тренировки для ума. Но в итоге получается более 450 км. Разницу в 100 км ребята из adme топают пешком.
  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 9 comments