← Все вопросы

исполнитель водолей — задача на переливания, отмерить 4 литра двумя сосудами

Задан 11 месяцев назад913 просмотров2 ответа
6

Дали исполнитель Водолей. Есть два сосуда: на 5 литров и на 3 литра, и бесконечный кран + слив. Надо получить ровно 4 литра в большом. Я переливаю туда-сюда и у меня то 2 то 1 литр, до 4 никак не дойду. Можно по шагам как это делается?

2 ответа

12
✓ Принятый ответ — помог автору

Классика! Сосуды 5 и 3, надо получить 4 в пятилитровом. Команды Водолея обычно: наполнить, вылить (опустошить), перелить из одного в другой.

Пошаговое решение:

Наполнить A          (A=5, B=0)
Перелить из A в B    (A=2, B=3)  — в B влезло только 3
Вылить B             (A=2, B=0)
Перелить из A в B    (A=0, B=2)
Наполнить A          (A=5, B=2)
Перелить из A в B    (A=4, B=3)  — в B долили 1 до полного

Готово, в A ровно 4 литра.

Где A — сосуд на 5 л, B — на 3 л. Ключевая идея: «перелить из A в B» льёт пока ИЛИ A не опустеет, ИЛИ B не наполнится. Поэтому на последнем шаге в B вошёл только 1 литр (там уже было 2), а в A осталось 4.

Совет: всегда веди табличку (A, B) после каждой команды — как я в скобках. Без таблички в переливаниях запутаться легче лёгкого.

4

Главное правило Водолея: «перелить» останавливается сам — либо когда из чего льёшь опустело, либо куда льёшь заполнилось. Это не «вылей всё подчистую».

Как понял это — задачи решаются. И обязательно записывай состояние обоих сосудов после каждого шага.

Ваш ответ

Войдите, чтобы ответить на вопрос.
Поддержать проект