1 Занятие 8. ПЕРЕЛИВАНИЯ –– 1 1. Имеются два сосуда

advertisement
Занятие 8. ПЕРЕЛИВАНИЯ –– 1
1. Имеются два сосуда вместимостью 8 и 5 литров и
большая бочка, наполненная водой. Как с помощью этих
двух сосудов отмерить ровно 6 литров воды? Всякие уловки
запрещены, то есть на сосудах нельзя делать никаких
отметок, их нельзя наклонять, чтобы отмерять доли литра, и т. п.
Решение задачи можно оформить в виде следующей таблицы.
8
5
0
0
8
0
3
5
3
0
0
3
8
3
6
5
6
0
Вначале оба сосуда пусты (первый столбец); наполним водой первый
сосуд (второй столбец); теперь перельём из него воду во второй сосуд (третий
столбец); потом эти 5 л выльем обратно в бочку или в раковину (четвёртый
столбец); затем 3 л воды из первого сосуда перельём во второй (пятый столбец);
вновь наполним первый сосуд водой из бочки (шестой столбец); дольём из него
2 л воды в первый сосуд, наполнив его до краёв (седьмой столбец); выльем
содержимое второго сосуда обратно в бочку (последний столбец) — задача
решена.
Для того чтобы сделать представленное табличное решение более
осмысленным, запишем по условию задачи уравнение: 8x  5 y  6 , x и y —
целые числа. Наша задача состоит не в том, чтобы найти общее решение этого
уравнения, а в том, чтобы подобрать такие значения x и y, при которых сумма их
модулей наименьшая.
Приведённому выше решению соответствуют значения x  2 (два раза
наполнялся сосуд объёмом 8 л) и y  2 (два раза опорожнялся сосуд объёмом
5 л). Заметим, что задача допускает и другое (более длинное) решение, при
котором сначала наполняется сосуд объёмом 5 л; ему соответствуют значения
x  3 и y  6 . Постройте для него решение в виде таблицы самостоятельно.
1
Вход
НБ
Б→М
да
Б = 0?
нет
ОМ
нет
Последовательность операций табличного
метода решения образует алгоритм, который
можно изобразить в виде блок-схемы ( см. рис. ).
Для
обозначения
операций использованы
следующие сокращения: НБ — наполнить
больший сосуд (объёмом 8 л); НМ — наполнить
меньший сосуд (объёмом 5 л); ОМ —
опорожнить меньший сосуд; Б → М — перелить
из большего сосуда в меньший, пока больший не
опустеет или меньший не наполнится; Б = 0? —
посмотреть, пуст ли больший сосуд; Б = 6? —
проверить, выполнено ли требование задачи.
Составьте самостоятельно блок-схему для
другого способа решения задачи, при котором
сначала наполняется меньший сосуд.
Б = 6?
да
Рассмотрим на данном примере ещё один
общий метод решения задач на переливание
жидкостей — метод математического бильярда.
Этот метод позволяет легко решать задачи данного типа, вычерчивая
бильярдную траекторию шара, отражающегося от бортов стола, имеющего
форму параллелограмма. Границы таких столов удобнее всего рисовать на
бумаге, на которую нанесена сетка из одинаковых правильных треугольников.
Выход
В рассматриваемой задаче стороны параллелограмма должны иметь
длины 5 и 8 единиц. По одной стороне будем откладывать количество воды в
литрах в 8-литровом сосуде, а по другой — в 5-литровом сосуде (см. рис.).
(3; 5)
(6; 5)
(0; 3)
(0; 0)
(8; 3)
(3; 0)
(6; 0)
2
(8; 0)
Бильярдный шар может перемещаться только вдоль прямых, образующих
сетку на параллелограмме. После удара о стороны параллелограмма шар
отражается и продолжает движение вдоль выходящего из точки борта, где
произошло соударение. При этом каждая точка параллелограмма, в которой
происходит соударение, полностью характеризует, сколько воды находится в
каждом из сосудов.
Вначале шар находится в левой нижней вершине в точке (0; 0). Он
перемещается вдоль нижнего основания параллелограмма до тех пор, пока не
достигнет правой боковой стороны в точке (8; 0). Это означает, что 8-литровый
сосуд наполнен до краёв, а 5-литровый пуст. Отразившись упруго от правого
борта, шар катится вверх и влево и ударяется о верхний борт в точке с
координатами (3; 5). Это означает, что в 8-литровом сосуде осталось всего 3
литра воды, а 5 литров из него перелили в меньший сосуд.
Прослеживая дальнейший путь шара и записывая все этапы его движения
до тех пор, пока он не попадёт в точку (6; 0) нижнего борта, мы получим ответ и
узнаем, в какой последовательности необходимо производить переливания,
чтобы отмерить 6 литров воды. Все семь переливаний изображены схематически
на рис.
2. Некий господин имеет в бочонке 9 л вина и хочет подарить из
них 6 л, но у него нет подходящего сосуда, однако имеются два пустых
сосуда объёмом 8 л и 5 л. Как с их помощью отмерить ровно 6 л вина?
Решение. Отличие данной задачи от предыдущей состоит в том, что
исходное количество жидкости в ней ограничено величиной 9 л. Ясно, что при
бильярдном методе решения мы теперь не сможем попасть в те точки
параллелограмма, задающего множество возможных состояний системы, в
которых сумма координат (расстояний, отложенных вдоль сторон
параллелограмма) превосходит 9.
Данная задача — задача о трёх сосудах, сумма содержимого которых
постоянна. Её решение методом математического бильярда предполагает
использование так называемых трилинейных координат.
3
A
x
351
054
036
450
z
630
810
B
009
306
y
603
801
C
Рассмотрим правильный треугольник АВС со стороной a и высотой
h  a  3 2 и точку P в плоскости треугольника. Трилинейные координаты x, y, z
точки P относительно треугольника АВС определяются как соответствующие
расстояния от точки P до сторон треугольника АВ, ВС и АС. Эти расстояния
считаются положительными, когда точка P находится внутри треугольника.
Поскольку сумма площадей треугольников PAB, PBC и PAC равна площади
треугольника ABC, то
1
1
1
1
ax  ay  az  ah ,
2
2
2
2
откуда получаем, что x  y  z  h , то есть сумма трилинейных координат
постоянна и равна высоте треугольника. Это свойство определяет использование
трилинейных координат в тех ситуациях, когда имеются три переменные
величины, сумма которых постоянна.
В нашей задаче выберем треугольник АВС со стороной a  9  2
3 , его
высота h  9 . Линиями, параллельными сторонам треугольника, разобьём его на
правильные треугольнички с единичной высотой ( см. рис.). Вершины этих
единичных треугольников (узлы трилинейной сетки) соответствуют
целочисленным значениям объёмов вина (в литрах), разлитого по трём сосудам.
Область операций — область допустимых значений переменных —
4
определяется условиями: 0  x  8 , 0  y  5 , 0  z  9 . Как видно из рисунка ,
этой области соответствует бильярдный стол, имеющий форму пятиугольника,
координаты вершин которого суть:  0; 0; 9  , 8; 0;1 , 8;1; 0 ,  4; 5; 0 ,  0; 5; 4 
или в сокращённой форме: 009, 801, 810, 450, 054.
Путь бильярдного шара — шестизвенная ломаная, соединяющая точку
B  0; 0; 9  с точкой  6; 0; 3 , — указывает одно из возможных решений. Можно
оформить решение задачи в виде таблицы:
8
5
9
0
0
9
8
0
1
3
5
1
3
0
6
0
3
6
6
3
0
6
0
3
3. Можно ли, пользуясь двумя пустыми вёдрами объёмом 12 л и
9 л, набрать из речки ровно 4 л воды?
Ответ. Нельзя.
4. Дан сосуд ёмкостью 12 пинт, наполненный жидкостью, и два
пустых сосуда ёмкостью 9 пинт и 5 пинт. Как разделить жидкость на две
равные порции?
5. В походе приготовили ведро компота. Как, имея банки,
вмещающие 500 мл и 900 мл, отливать компот порциями по 300 мл?
6. В канистре не менее 10 л бензина. Как отлить из неё 6 л с
помощью 9-литрового ведра и 5-литровой банки?
Решение.
a  10 a
a 5
9
0
0
5
0
5
a 5
5
0
a  10
5
5
a  10
9
1
a 1
0
1
a 1
1
0
a6
1
5
a6
6
0
7. В 6-литровом бочонке налито 4 л рома, а в 7-литровом — 6 л.
Используя 3-литровую банку, помогите двум пиратам поделить на две
равные части этот ром.
5
Решение.
7
6
3
6
4
0
3
4
3
3
6
1
7
2
1
5
2
3
5
5
0
8. Для путешествия по морю необходим запас пресной воды. В
плавании вода расходуется со скоростью 1 бочка в сутки. В некоторый
момент времени запас воды на берегу составлял 8 бочек, и вода
находилась в баке, заполненном до краёв. На яхте имеется такой же бак,
объёмом 8 бочек, но пустой. На сколько дней можно планировать
путешествие, если с собой нельзя брать лишнюю воду, а в распоряжении
имеется ещё две пустых ёмкости объёмом 3 и 6 бочек и их можно
использовать для переливания воды?
Ответ. Путешествие может планироваться на 2, 3, 5 или 6 дней.
10. Имея два полных 10-литровых бидона молока и пустые 4- и 5литровые кастрюли, отмерьте по 2 л молока в каждую кастрюлю.
(Выливать на землю молоко нельзя!)
Решение.
10
10
5
4
10
10
0
0
10
5
5
0
10
5
1
4
10
9
1
0
10
9
0
1
5
9
5
1
5
9
2
4
5
10
2
3
8
10
2
0
8
6
2
4
2
2
6
10
_________________
11. Как с помощью двух бидонов ёмкостью 17 литров и 5 литров
отлить из молочной цистерны 13 литров молока?
Решение. С помощью 5-литрового бидона налить в 17-литровый бидон 15
литров молока. Затем, наполнив ещё раз 5-литровый бидон, налить недостающие
2 литра в больший бидон. Тогда в 5-литровом бидоне останется 3 литра молока.
Вылив 17 литров молока обратно в цистерну, налить эти 3 литра молока в 17литровый бидон. Остаётся добавить туда ещё 10 литров молока.
6
Можно оформить решение в виде таблицы:
17
5
0
0
5
0
5
5
10
0
10
5
15
0
15
5
17
3
0
3
3
0
3
5
8
0
8
5
13
0
12. В бочонке 18 л оливкового масла. Имеется два ведра по 7 л, в
которые нужно налить по 6 л масла и черпак объёмом 4 л. Как можно
осуществить розлив?
Решение.
7
7
4
0 0 4 4 4 4 7 0 1 1 5 5 7 7 0 0 4 4 7 0 1 1 5 5 7 0 2 2 6
0 0 0 0 4 4 4 4 4 4 4 4 4 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6
0 4 0 4 0 4 1 1 0 4 0 4 2 0 0 4 0 4 1 1 0 4 0 4 2 2 0 4 0
13. Имеется три сосуда без делений объёмами 4 л, 5 л и 6 л, кран с
водой, раковина и 4 л сиропа в самом маленьком сосуде. Как с помощью
переливаний получить в двух сосудах по 4 л смеси воды с сиропом, так
чтобы в каждом сосуде воды и сиропа было поровну?
Решение.
4
5
6
4с
0
0
4
5
6
2в+2с
2с
0
0
4с
0
4в
4с
0
2в+2с
0
2с
0
4с
4в
4в
4с
4в
0
2в+2с
2с
2в
4с
6в
2с
2в+2с
0
2в
4с
0
2в+2с
2в+2с
0
14. Белоснежка ждёт в гости гномов. Зима выдалась морозной и
снежной, и Белоснежка не знает наверняка, сколько гномов решатся
отправиться в далёкое путешествие в гости, однако знает, что их будет не
более 12. В её хозяйстве есть кастрюлька на 12 чашек, она наполнена
водой, и две пустых — на 9 чашек и на 7. Можно ли приготовить кофе
для любого количества гостей, если угощать каждого одной чашкой
напитка?
Ответ. Возможно получение любого количества чашек кроме 6.
7
15. Три грабителя украли у лавочника флакон с 24 унциями
бальзама. Убегая, они встретили по дороге продавца стеклянной посуды,
у которого купили три сосуда. Добравшись до надёжного места, они
захотели разделить добычу, но оказалось, что купленные сосуды
вмещают 13, 11 и 5 унций соответственно. Как они могли бы разделить
добычу на равные доли?
Указание. Сначала нужно налить бальзам в сосуды ёмкостью 11 унций и 5
унций, затем отдать одному грабителю флакон с оставшимися в нём 8 унциями
бальзама, что и является его долей добычи. Осталось разделить на равные части
16 унций бальзама с помощью сосудов ёмкостью 5, 11 и 13 унций.
16. К продавцу, стоящему у бочки с квасом, подходят два весёлых
приятеля и просят налить им по литру кваса каждому. Продавец
замечает, что у него есть лишь две ёмкости в 3 л и 5 л, и поэтому он не
может выполнить их просьбу. Приятели продолжают настаивать и
предлагают продавцу миллион рублей с тем условием, что они получат
свои порции одновременно. После некоторого размышления продавец
сумел это сделать. Каким образом?
Решение. Секрет задачи в том, что предложенная сумма превышает
стоимость всего кваса в бочке, а это значит, что в некоторый момент продавец
имеет возможность вылить остатки кваса из бочки и использовать её как
дополнительную ёмкость.
Сначала получим 7 л кваса с помощью двух имеющихся сосудов —
3-литрового и 5-литрового:
5
3
0
0
5
0
2
3
2
0
0
2
5
2
Затем сливаем квас из бочки и переливаем в неё 7 литров из ёмкостей.
Теперь решаем задачу о трёх сосудах:
7
5
3
7
0
0
4
0
3
4
3
0
1
3
3
8
1
5
1
1
0
1
0
1
1
Download