Есть два сосуда объемом 9 и 10 литров. За одно действие любой сосуд можно наполнить или...

0 голосов
41 просмотров

Есть два сосуда объемом 9 и 10 литров. За одно действие любой сосуд можно наполнить или опустошить. Кроме этого, за одно действие можно переливать воду из одного в другой до тех пор, пока первый сосуд не окажется пустым или второй - полным.
Изначально оба сосуда пусты. За какое наименьшее количество действий можно получить в каком-нибудь сосуде 5 литров?


Информатика (12 баллов) | 41 просмотров
Дан 1 ответ
0 голосов

Что-то у меня не придумывается меньше, чем за 18 телодвижений.

1. Залил полный бак в 10-литровый
2. Перелил его в 9-литровый. В 10 остался 1 литр
3. 9 опустошил, теперь в нём пусто, а в 10 по-прежнему 1 л.
4. перелил 1 л в 9.
Этот 1 литр - назовём его переходящим остатком.

Опять погнали те же 4 телодвижения, по результатам переходящим остатком будет 2 литра.

Ещё раз - и получили переходящий остаток 3 литра
Ещё раз, и получили 4 литра. К этому моменту сделали этот цикл уже 4 раза, итого 4*4 = 16 движений.

Опять делаем этот же цикл, но достаточно двух первых операций, и в 10-литровом баке получаем остаток 5 литров.

Итого, 16+2 = 18.

Ну, у меня так получилось. Может кто лучше придумает.

(6.5k баллов)
0

У меня получилось за 17 действий

0

В одном будет 5, а в другом - 10