Задача говорит о следующем режиме наливания:
- можно наливать во выбранный сосуд столько, сколько в нем уже имеется литров (то есть если в сосуде y литров, то можно сделать приток ровно y литров из другого сосуда);
- после такого переброса вместимость каждого сосуда не должна превышать 20 литров.
Цель: получить поровну по 8 литров в каждом сосуде (итог 8, 8, 8), ведь суммарно воды 24 литра.
Пошаговое решение
Обозначим сосуды 1, 2, 3 с начальными заполнениями:
- 1-й сосуд: 11 л
- 2-й сосуд: 7 л
- 3-й сосуд: 6 л
Шаг 1. Переливаем из 1-го в 2-й по 7 л
- 1-й сосуд теряет 7 литров → 11 - 7 = 4 л
- 2-й сосуд получает 7 литров → 7 + 7 = 14 л
- 3-й сосуд остаётся 6 л
Результат: (4, 14, 6)
Шаг 2. Переливаем из 2-го в 1-й по 4 л
- 1-й сосуд получает 4 литра → 4 + 4 = 8 л
- 2-й сосуд отдаёт 4 литра → 14 - 4 = 10 л
- 3-й сосуд остаётся 6 л
Результат: (8, 10, 6)
Шаг 3. Переливаем из 2-го в 3-й по 6 л
- 3-й сосуд получает 6 литров → 6 + 6 = 12 л
- 2-й сосуд отдаёт 6 литров → 10 - 6 = 4 л
- 1-й сосуд остаётся 8 л
Результат: (8, 4, 12)
Шаг 4. Переливаем из 1-го в 2-й по 4 л
- 2-й сосуд получает 4 литра → 4 + 4 = 8 л
- 1-й сосуд отдаёт 4 литра → 8 - 4 = 4 л
- 3-й сосуд остаётся 12 л
Результат: (4, 8, 12)
Шаг 5. Переливаем из 3-го в 1-й по 4 л
- 1-й сосуд получает 4 литра → 4 + 4 = 8 л
- 3-й сосуд отдаёт 4 литра → 12 - 4 = 8 л
- 2-й сосуд остаётся 8 л
Результат: (8, 8, 8)
Итог: в каждом сосуде по 8 литров. Это и требовалось.
Краткое пояснение
- На каждом шаге мы выбираем сосуд-«приёмник» с количеством y литров и переливаем ровно y литров из другого сосуда, чтобы приёмник удвоился (стал 2y), пока не достигнем желаемого распределения.
- Все переходы соблюдают ограничение по вместимости: ни одно из удвоений не даёт более 20 литров (максимально допустимо 2y ≤ 20, то есть y ≤ 10), и на каждом шаге достаточно воды в источнике.
Если хочешь, могу показать ещё один возможный порядок ходов или разобрать общий принцип для подобных задач.