книги / Математические методы принятия решений
..pdfШ аг 1. Для |
источника остается постоянная пометка О, для |
|
узла |
2 временная |
пометка с\2 = 1450, для узла 3 сц = 2750, для |
узла |
4 с\4 = 3850, для узла 5 c\s = 4750. Для остальных узлов вре |
менные пометки равны оо. Последним из постоянно помеченных узлов является узел 1 (единственный, иначе надо было взять узел
сминимальной пометкой).
Шаг 2. С узлом 1 непосредственно связаны узлы 2 ,..., 5. Им
припишем новые временные пометки, равные 82 = 0 + с\2 = 1450, 83 = 0 + ci3 = 2750, 84 = 0 + си = 3850, 85 = 0 + С15 = 4750 соответ ственно. Поскольку величина 82 минимальна из всех, то узлу 2 припишем постоянную пометку 82 = 1450.
Ш аг 3. Рассмотрим движение из узла 2; оставляем постоянные пометки 0 для узла 1 и 1450 для узла 2. Узлам 3, . . . , 6 , непосред ственно связанным с узлом 2 , припишем соответственно времен ные пометки 83 = ев = 2750, 84 = С14 = 3850, 85 = С15 = 4750, 8б = = ci6 = 6900, минимальные из возможных временных пометок при движении из узла 1 в узлы 3 ,...,б . Например,
83 = 82 + С2з = 1450 + 1700 = 3150 > 2750, 84 = 1450 + 3200 = 4650 > 3850,
Выбираем 83 = 2750, 84 = 3850,.. .Остальным узлам припишем временные пометки, равные оо.
Ш аг 4. Поскольку минимальное значение временных поме' ток 83, 84, 85, 8б равно 2750, узлу 3 припишем постоянную пометку 83 = 2750.
Дальнейшие шаги повторяем аналогично шагам 3 и 4. Результа ты вычислений сведем в табл. 3.2.
Обратим внимание на выбор временной пометки 8б на шаге 9 (см. табл. 3.2). Последняя постоянная пометка 85 = 4750 присвоена узлу 5, тогда для узла б временная пометка будет 8б = 85 + cs$ = = 4750 + 2075 = 6825 < 6900 (временная пометка &б на шаге 8). По этому на шаге 9 берут минимальное значение 8б = 6825.
Из решения задачи следует, что минимальные общие затраты на покупку и содержание автомобиля составляют за рассмотрен ный период 11 250 уел. ед. Кратчайшая цепь состоит из дуг, для каждой из которых разность между значениями постоянных по меток ее концевых узлов равна длине этой дуги: [8Д = [8*] + су.
|
|
|
|
|
|
|
|
Таблица 3 .2 |
|
|
|
Результаты вычислений по алгоритму Дейкстры |
|
||||||
Шаг |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
0 |
[0] |
оо |
оо |
00 |
00 |
оо |
00 |
оо |
00 |
1 |
[0] |
1450 |
2750 |
3850 |
4750 |
оо |
00 |
оо |
00 |
2 |
[0] |
[1450] |
2750 |
3850 |
4750 |
00 |
00 |
оо |
оо |
3 |
[0] |
[1450] |
2750 |
3850 |
4750 |
6900 |
оо |
оо |
оо |
4 |
[0] |
[1450] |
[2750] |
3850 |
4750 |
6900 |
00 |
оо |
ОО |
5 |
[0] |
[1450] |
[2750] |
3850 |
4750 |
6900 |
8550 |
оо |
ОО |
6 |
[0] |
[1450] |
[2750] |
[3850] |
4750 |
6900 |
8550 |
оо |
ОО |
7 |
[0] |
[1450] |
[2750] |
[3850] |
4750 |
6900 |
8550 |
10000 |
ОО |
8 |
[0] |
[1450] |
[2750] |
[3850] |
[4750] |
6900 |
8550 |
10000 |
ОО |
9 |
[0] |
[1450] |
[2750] |
[3850] |
[4750] |
6825 |
8550 |
10000 |
11250 |
10 |
[0] |
[1450] [2750] [3850] [4750] [6825] |
8550 |
10000 |
11250 |
||||
И |
[0] |
[1450] [2750] [3850] [4750] [6825] |
8550 |
10000 |
11250 |
||||
12 |
[0] |
[1450] [2750] [3850] [4750] [6825] [8550] |
10000 |
11250 |
|||||
13 |
[0] |
[1450] [2750] [3850] [4750] [6825] [8550] |
10000 |
11250 |
|||||
14 |
[0] |
[1450] [2750] [3850] [4750] [6825] [8550] [10000] |
11250 |
||||||
15 |
[0] |
[1450] [2750] [3850] [4750] [6825] [8550] [10000] |
11250 |
||||||
16 |
[0] |
[1450] |
[2750] |
[3850] |
[4750] |
[6825] |
[8550] |
[10000] |
[11250] |
Последнее соотношение можно использовать рекурсивно, двига ясь от стока t к источнику s. Определив узел, непосредственно предшествующий t в кратчайшей цепи, будем повторять данную процедуру до тех пор, пока не достигнем узла s. В нашем случае первое значение Cÿ, совпадающее с разностью между значениями постоянных пометок, равно 6500, т. е. узел 5 непосредственно пред шествует стоку t (узлу 9) в кратчайшей цепи. Следующим узлом кратчайшей цепи (и исходным) будет узел 1. Отсюда для миними зации общих затрат автомобиль следует заменять в начале первого, пятого и девятого годов.
§ 3.3. Задача о многополюсной кратчайш ей цепи
Рассмотрим задачу нахождения кратчайших цепей между всеми парами узлов сети. Кратчайшей цепью между двумя произвольны ми узлами является цепь, стоимость единицы потока по которой минимальна. Поскольку направление потока в неориентированных
дугах нельзя определить заранее, то каждую такую дугу следует заменить двумя ориентированными дугами с противоположными направлениями и длинами (стоимостями), равными длине неори ентированной дуги. Предполагается, что длины дуг могут быть как положительными, так и отрицательными. Однако длина, или стоимость, каждого цикла или контура должна быть неотрица тельной. Алгоритм решения данной задачи разработан Флойдом. Пусть N = {1,2,..., п} — множество узлов, a Cÿ — количественный параметр (длина, стоимость) дуги (г, j), направленной от узла г
кузлу j. Обозначим через d*k длину кратчайшей цепи из узла г
вузел к.
Алгоритм Флойда заключается в следующем. Первоначально за длину dik кратчайшей цепи между двумя произвольными узла ми г и к (между которыми могут быть и промежуточные узлы) принимают длину дуги (г, к), соединяющей эти узлы. Затем после довательно проверяют всевозможные промежуточные узлы, рас положенные между г и к. Если длина цепи, проходящей через некоторый промежуточный узел, меньше текущего значения dik, то переменной dik присваивают новое значение; если dik > dij + djk, то значение dik заменяют значением dtJ + djk. Такую процедуру по вторяют для всевозможных пар узлов, пока не будут получены все значения dik-
В алгоритме Флойда начальным значением переменной dik яв~ ляется величина Cij, а затем данная оценка последовательно улуч шается до тех пор, пока не будет найдена кратчайшая цепь между узлами i и к. Алгоритм Флойда позволяет решать задачу о много полюсной кратчайшей цепи (пути) для сети из п узлов за п итера ций. Обозначим через dJik оценку длины кратчайшей цепи из узла г в узел к, полученную на j -й итерации, и рассмотрим следующую задачу.
Задача. Необходимо соединить восемь объектов многополюсной цепью кратчайшей длины, причем один из объектов (узел 8) может быть только направляющим информацию, а остальные могут и направлять, и получать информацию без каких-либо ограничений (рис. 3.4). На рис. 3.4 каждый объект представлен узлом, а каждая линия —дугой. Ориентированные дуги соответствуют распредели тельным звеньям, которые могут быть использованы для передачи
информации только в указан ном направлении. Числа, при писанные дугам, соответствуют расстоянию между объектами и образуют матрицу ||cÿ||. Тре буется найти для каждого объ
екта кратчайшие пути, связыва |
Рис. 3.4. Пример задачи о многопо |
|
люсной кратчайшей сети |
||
ющие его с другими объектами. |
||
|
||
Р е ш е н и е . Воспользуемся алгоритмом Флойда. Поскольку |
п = 8, то число итераций в алгоритме будет равно восьми. На каж дой итерации строят матрицу Z)J = ||c(?fc|| длин кратчайших путей,
которые содержат текущие оценки |
длин кратчайших цепей, где |
D 0 = Цс^'Ц, и матрицу маршрутов |
R?, служащую для нахожде |
ния промежуточных узлов (если таковые имеются) кратчайших цепей. На j -й итерации имеем матрицу В? = ||rffc||, где ^ — пер вый промежуточный узел кратчайшей цепи из г в А;, выбирае
мый из множества |
{1,2 |
гф j Ф к, |
и матрицу R 0 4 * 4 1 . |
|
где Æ = к. Узел т3., |
может быть получен из следующего соотно- |
|||
Чк |
|
|
|
|
шения: |
если |
d3ik 1> d\j |
1+ dJjk |
|
г о ^ |
||||
|
|
|
Ч к |
в противном случае. |
|
rik |
||
|
Строим матрицу длин кратчайших цепей D 0 и матрицу марш рутов R 0, отсутствие связи помечаем знаком оо, нулем обозначаем связи внутри одного узла. Получаем
/ ° |
9 0 0 3 0 0 |
0 0 |
о о |
о о \ |
|
f 1 2 3 4 5 6 |
7 |
||||||||
9 0 |
2 |
о о |
7 0 0 |
о о |
о о |
|
1 2 3 4 5 6 |
||||||||
ОО |
2 |
0 2 |
|
4 |
8 |
6 |
0 0 |
|
1 2 |
3 4 |
5 |
6 |
7 |
||
3 о о |
2 |
0 |
0 0 |
о о |
5 0 0 |
R° = |
1 2 |
3 4 |
5 6 |
7 |
|||||
о о |
7 4 |
0 0 |
|
0 10 |
0 0 |
, |
1 2 |
3 4 |
5 6 |
7 |
|||||
|
о о |
|
|||||||||||||
о о |
о о |
8 о о |
10 0 7 о о |
|
1 2 |
3 4 |
5 |
6 |
7 |
||||||
о о |
о о |
6 |
5 |
о о |
7 0 о о |
|
1 2 |
3 4 |
5 |
6 |
7 |
||||
\ о о |
о о |
о о о о |
|
9 12 10 0 / |
|
\1 2 3 4 |
5 |
6 |
7 |
ОО
8
8
8
8
8
8
8/
И т е р а ц и я 1. Выбираем базовый узел j = 1. В матрице D 0 вычеркиваем первую (базовую) строку и первый (базовый)
столбец. Чтобы определить, приведет ли использование узла 1 к более коротким цепям, необходимо исследовать элементы мат рицы D 0 с помощью трехместной операции:
d\k= minKfc_1; dijX+ djk1}’ гф]фк.
Если d3k = оо, т. e. j -й элемент базового столбца равен оо, то dfk=
= djk l Если djk l = оо, т. e. j -й элемент базовой строки равен оо,
то d3ik 1= d3ik. Если d3ik 1 Ф оо и одно из двух значений d^ или djk
превосходит d?k 1, то замену также производить не следует. Столб цы 3, 5, 7 и 8 содержат элементы, равные оо и принадлежащие базовой строке. Строки 3 ,5 , ... , 8 также содержат элементы, рав ные оо и принадлежащие базовому столбцу. Значит, исследовать необходимо элементы d%2, d$4, d42, dj^. Поскольку диагональные элементы можно не рассматривать, необходимо исследовать лишь оценки <^24 и d42. С помощью трехместной операции получим
d\ 4 |
= |
т т { ^ 24; |
+ |
^i°4} = |
min{oo; 9 + 3} |
= |
12, |
d\ 2 |
= |
т т { ^ 42; d41 + |
d\2) = |
min{oo; 3 + 9} |
= |
12. |
Оценки db и d\ 2 лучше оценок d^ 4 и d\ 2 и должны быть вне
сены в матрицу D 1, а в матрице маршрутов надо положить r24 = j,
г24 = 1 и r42 = 1. Остальные элементы матриц D 0 |
и R 0 |
остаются |
|||||||||||||
без изменений. Получим |
|
|
|
|
|
|
|
|
|
|
|
||||
/ ° |
9 |
00 |
3 оо оо оо |
|
/1 2 3 4 5 6 7 8 \ |
||||||||||
9 |
0 |
2 |
12 7 00 оо 00 |
1 2 3 1 5 6 7 8 |
|||||||||||
00 |
2 |
0 |
2 |
4 |
8 |
6 |
00 |
1 2 |
3 |
4 |
5 6 |
7 |
8 |
||
3 |
12 |
2 |
0 |
00 |
00 |
5 |
00 |
1 |
1 3 |
4 |
5 |
6 |
7 |
8 |
|
оо |
7 |
4 |
00 |
0 |
10 |
|
, |
я 1 = |
|
3 |
4 |
5 |
6 |
7 |
8 |
оо оо |
1 2 |
||||||||||||||
00 00 8 |
оо 10 |
0 |
7 |
00 |
1 2 |
3 |
4 |
5 |
6 |
7 |
8 |
||||
00 оо 6 |
5 |
00 |
7 |
0 00 |
1 2 |
3 |
4 |
5 |
6 |
7 |
8 |
||||
\о о |
00 |
00 |
оо |
9 |
12 |
10 |
0 / |
\1 |
2 |
3 |
4 |
5 |
6 |
7 |
8/ |
И т е р а ц и я |
2. Определим узел 2 как базовый, т.е. проверим, |
приведет ли его использование к более коротким цепям, и выделим в матрице D 1 вторую строку и второй столбец. Здесь столбцы 6, 7, 8 содержат элементы, равные оо и принадлежащие базовой строке,
а строки 6, 7, 8 —элементы, равные оо и принадлежащие базовому столбцу. Столбцы и строки 6, 7, 8 не рассматриваем. Исключа ем и диагональные элементы. Остается исследовать лишь элементы d\3, d\4, d\5, d\j, d34, d\5, d\ ,, d\3, d\5, dl5l, d\3, d\4. Нетрудно проверить, что здесь улучшены могут быть только оценки d{3, d\5, d31, d45, djj, d34, равные oo:
d23 = m in{d|3;d {2 + d23} = min{oo; 9 + 2} = 11, |
|
|
|
||||||||||||
di5 = min{d}5; d\2 + d\5} = min{oo; 9 + 7} = 16, |
|
|
|
||||||||||||
d31 = min{d31; d\ 2 + d2i} = min{oo; 2 + 9} = |
11, |
|
|
|
|||||||||||
dA5 = т т { ^ 45; d\ 2 + ^25} = min{oo; 12 + 7} = |
19, |
|
|
||||||||||||
d31 = m inld^; d\ 2 + ^21} = niin{oo; 7 + 9} = |
16, |
|
|
|
|||||||||||
dj4 = т т { < 4 4; d\ 2 + ^ 4} = min{oo; 7 + |
12} = 19. |
|
|
||||||||||||
Таким |
образом, rj3 = rf5 = r3l = r\ 5 = r 31 = r\A = 2; |
остальные |
|||||||||||||
элементы |
матрицы |
R 2 |
остаются |
без изменения. Новые матрицы |
|||||||||||
имеют вид |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/ ° |
9 |
|
11 3 16 00 оо о о \ |
|
2 |
2 4 |
2 6 |
7 |
8 \ |
||||||
|
|
2 12 7 00 оо оо |
1 2 |
3 1 5 6 |
7 |
8 |
|||||||||
9 0 |
|
||||||||||||||
11 2 |
|
0 2 4 8 6 оо |
2 2 |
3 4 |
5 6 |
7 |
8 |
||||||||
3 12 |
|
2 0 19 |
оо |
5 оо |
1 1 3 4 |
2 6 |
7 |
8 |
|||||||
16 7 |
|
4 |
|
|
|
|
, R 2 = |
|
3 2 |
5 6 |
7 |
8 |
|||
|
19 0 10 оо оо |
2 2 |
|||||||||||||
оо |
8 оо |
оо 10 0 7 оо |
1 2 |
3 4 |
5 6 |
7 |
8 |
||||||||
оо |
6 |
5 |
оо оо |
7 0 оо |
1 2 |
3 4 |
5 6 |
7 |
8 |
||||||
\о о |
оо |
|
оо |
оо |
9 |
12 |
10 |
0 ) |
\1 |
2 |
3 |
4 |
5 6 |
7 |
8/ |
И т е р а ц и я |
3. |
Определяем, |
приведет |
ли |
использование |
уз |
|||||||||
ла 3 к более коротким цепям. Берем узел |
3 в качестве базового |
||||||||||||||
и выделяем 3-ю строку |
и 3-й столбец в |
матрице |
D 2. Исключа |
ем диагональные элементы, элементы 8-го столбца и 8-й строки, исследуем оставшиеся элементы матрицы D 2, получим новые мат рицы D 3 и R 3.
Аналогично получаем матрицы ZP и RP, j = 4 , ... , 8. Матри цы D i, R i, j = 5 , . . . , 8, остаются без изменений. Следовательно, оптимальное решение соответствует матрицам D 5 и R 5, определя ющим и оптимальное расстояние для передачи между объектами,
и последовательность передачи информации: |
|
|
|
|
|
|
|
|
||||||||
|
/ ° |
7 |
5 |
3 |
9 |
13 |
8 |
°°\ |
(\ |
4 |
4 |
4 |
4 |
4 |
4 |
8\ |
|
0 |
2 |
4 |
6 |
10 |
8 |
ОО |
4 2 3 3 |
3 3 |
3 |
8 |
|||||
|
7 |
|||||||||||||||
|
5 |
2 |
0 |
2 |
4 |
8 |
6 |
оо |
4 2 3 4 |
5 |
6 |
7 |
8 |
|||
|
3 |
4 |
2 |
0 |
6 |
10 |
5 |
ОО |
1 3 |
3 |
4 |
3 |
3 |
7 |
8 |
|
D 5 = |
9 6 4 6 0 10 10 оо , R 5 = |
4 |
3 |
3 |
3 |
5 |
6 |
7 |
8 |
|||||||
|
13 10 8 10 |
10 0 |
7 |
оо |
4 |
3 |
3 |
3 |
5 |
6 |
7 |
8 |
||||
|
8 8 6 5 |
10 7 |
0 |
оо |
4 |
3 |
3 4 |
3 |
6 |
7 |
8 |
|||||
|
\18 |
5 |
13 |
15 |
9 |
12 |
10 |
0 / |
\5 |
5 |
5 |
5 |
5 |
6 |
7 8/ |
|
Например, определим кратчайшую цепь из узла 1 в узел 5. |
||||||||||||||||
По матрице D 5 |
определяем, |
что |
длина этой |
цепи |
d\ 5 = 9. |
Что |
бы найти соответствующую последовательность узлов, рассмотрим матрицу R 5. Имеем г^5 = 4, т.е. узел 4 является первым промежу точным узлом в кратчайшей цепи из узла 1 в узел 5. Теперь опре делим, какой узел следует за узлом 4 в кратчайшей цепи из узла 4 в узел 5. Поскольку г\ь = 3, то за узлом 4 следует узел 3. Анало гично, за узлом 3 следует узел 5, так как г| 5 = 5. Следовательно, кратчайшая цепь из узла 1 в узел 5 определяется последовательно стью узлов 1, 4, 3, 5.
§ 3.4. Анализ сложности алгоритмов поиска кратчайш их путей
В алгоритмах Дейкстры (§3.2) и Флойда (§3.3) выполняются только две элементарные операции: сложение и сравнение.
Рассмотрим сеть, содержащую п узлов. В наихудшем случае в алгоритме Дейкстры конечный узел сети будет n -м по счету узлом, которому приписывают постоянную пометку. Пусть в неко торый момент работы алгоритма т узлам приписаны постоянные пометки, a m —п узлам — временные. Для определения (т + 1)-го узла, которому должна быть приписана постоянная пометка, необ ходимо вычислить п — т временных пометок, выполнив при этом каждый раз операции сложения и сравнения. После вычисления новых значений временных пометок необходимо также найти ми нимальное среди них, чтобы определить пометку, которая долж на стать постоянной. Данная процедура минимизации состоит
из п —т —1 сравнений. Таким образом, если имеется т узлов с по стоянными пометками, то число элементарных операций, которое необходимо выполнить для того, чтобы еще одному узлу приписать постоянную пометку, равно 3(п —т) — 1 % 3(п —т). Общее чис ло элементарных операций, выполнение которых необходимо для завершения работы алгоритма в наихудшем случае, можно опреде
лить по формуле
П—1
£ |
3(п —т ) = 3 У) (п — т) = |
|
|
|
771=1 |
+ 1] = |
3п(п —2) |
|
= 3 [ ( п - 1 ) + ( п - 2 ) + |
2 |
|
|
|
|
В алгоритме Флойда на каждой итерации суммарное число эле ментов, значение которых должно быть оценено с помощью трех местной операции, можно вычислить с учетом того, что:
1)общее число элементов матрицы равно п2;
2)суммарное число элементов в базовой строке и базовом столб це равно 2 п —1;
3)число нулевых элементов на главной диагонали равно п и для них не надо получать оценку;
4)один элемент базовой строки и один элемент базового столб ца расположены на главной диагонали;
5)анализ каждого элемента требует выполнения одной опера ции сложения и одной операции сравнения;
6)максимальное число операций, выполняемых на одной ите рации алгоритма, приблизительно равно 2п(п —3);
7)поскольку число итераций равно числу узлов п, общее число элементарных операций в алгоритме Флойда в наихудшем случае равно 2п2(п —3).
§3.5. Венгерский алгоритм задачи о назначениях
Впрактических приложениях часто необходимо:
—так распределить рабочих по рабочим местам, чтобы время изготовления изделия было минимальным;
—так разместить датчики по объектам, чтобы информация о ра боте объектов была максимальной;
—так распределить экипажи самолетов по рейсам, чтобы время
простоя техники было минимальным, и т. д.
Особенность этой задачи заключается в том, что каждый ресурс (рабочий, датчик, экипаж) используются ровно один раз и каждому объекту будет приписан ровно один ресурс.
Решение задачи может быть записано в виде двумерной матри цы X = ||Ху ||, г = 1, 2, . . . , т, j = 1, 2, . .. , т, где т — число объектов или ресурсов. Искомая переменная определяется следующим об разом:
1, если i-н ресурс назначается на j -й объект,
{0 в противном случае.
Критерий эффективности (целевая функция) задачи включает в себя элементы матрицы стоимостей Су- — затраты, связанные с на значением г-го ресурса на j -й объект. Для любого недопустимого назначения соответствующую ему стоимость полагают равной до статочно большому числу М . Допустимое решение задачи называ ют назначением. Для заданного значения m ресурсов и объектов существует т ! допустимых решений. Допустимое решение стро ят путем выбора ровно одного элемента в каждой строке матрицы
X= ||Ху || и ровно одного элемента в каждом столбце этой матрицы.
Взадаче о назначениях требуется минимизировать общую сто имость назначений, т. е. необходимо минимизировать функцию
771 771
/(х ) = ^ 2 cijxij
t = l j ' = l
при ограничениях:
а) каждый ресурс используется ровно один раз, т. е.
тп
2 ху = 1, г = 1, 2, . . . , т ; j =1
б) каждому объекту будет приписан ровно один ресурс, т. е.
771
Xij 1, J 1,1,..., тп.
i= 1
Очевидно, что задача о назначениях является частным случаем транспортной задачи при единичных значениях параметров сц н Ь{.
Поэтому для решения задачи о назначениях можно воспользоваться любым алгоритмом линейного программирования или методом по тенциалов, который применялся в § 2.6 для решения транспортной задачи. Однако для подобных задач разработан так называемый вен герский алгоритм, который наиболее эффективно использует спе цифику задачи о назначениях.
Задача. Разместить четыре датчика на четырех объектах таким образом, чтобы стоимость такого размещения была минимальна. Матрица стоимости назначений имеет вид
|
|
|
2 |
10 |
9 |
7 |
\ |
г |
, _ п |
и _ |
15 |
4 |
14 |
8 |
|
с |
- I M |
- |
13 |
14 |
16 |
п |
|
|
|
|
4 |
15 |
13 |
19 / |
Р е ш е н и е . В процессе решения задачи о назначениях исполь зуют тот факт, что если к каждому элементу г-й строки добавляют действительное число уг, а к каждому элементу j-ro столбца—дей ствительное число bj, то минимизация целевой функции
3 г
эквивалентна минимизации функции
3
Ш аг 1 (редукция строк). Данный шаг предназначен для полу чения в матрице стоимости назначений возможно большего числа нулевых элементов. Для этого в каждой строке из всех элементов вычитают минимальный:
/ 0 |
8 |
7 |
5 \ |
11 |
0 |
10 |
4 |
2 |
3 |
5 |
0 |
0 |
11 |
9 |
1 5 / |