Для того чтобы разделить 12 литров сока на три равные части по 4 литра, воспользуемся следующей последовательностью команд:
- Переливаем 5 литров сока из бочки (2) в ёмкость В (5 литров).
- Переливаем 3 литра из ёмкости В (5 литров) в ёмкость А (3 литра).
- Переливаем 4 литра из бочки (2) в ёмкость С (6 литров).
- Переливаем 1 литр из ёмкости С (6 литров) в ёмкость В (5 литров).
Таким образом, мы получаем:
- Ёмкость А: 3 литра
- Ёмкость В: 4 литра
- Ёмкость С: 3 литра
- В бочке (2): 5 литров
Теперь, чтобы получить в каждой ёмкости по 4 литра, нужно дополнительно немного перераспределить:
- Переливаем 3 литра из ёмкости В (5 литров) в ёмкость А (3 литра), так как ёмкость А уже полна, а В может отдать 1 литр.
После этой операции:
- Ёмкость А: 4 литра
- Ёмкость В: 1 литр
- Ёмкость С: 3 литра
- В бочку (2): 5 литров
- Переливаем 1 литр из ёмкости В (5 литров) в ёмкость С (6 литров).
Теперь у нас:
- Ёмкость А: 4 литра
- Ёмкость В: 0 литров
- Ёмкость С: 4 литра
- В бочке (2): 5 литров
- Переливаем 5 литров из бочки (2) в ёмкость В (5 литров).
Теперь распределение следующее:
- Ёмкость А: 4 литра
- Ёмкость В: 5 литров
- Ёмкость С: 4 литра
- В бочке (2): 0 литров
- Переливаем 1 литр из ёмкости В (5 литров) в ёмкость А (3 литра), чтобы снова получить 4 литра в ёмкости А.
Результат:
- Ёмкость A: 4 литра
- Ёмкость B: 4 литра
- Ёмкость C: 4 литра
Теперь у нас есть равное распределение по 4 литра в трех контейнерах.
Таким образом, краткий алгоритм действий можно записать так:
- 2 > B
- B > A
- 2 > C
- C > B
- B > A
- B > C
- 2 > B
- B > A
Эти действия позволят добиться заданного распределения.
