Изменения

Перейти к: навигация, поиск

Pintreepi1Lmax

81 байт убрано, 22:18, 30 мая 2016
Первый шаг
=== Псевдокод ===
==== Первый шаг ====
Алгоритм изменения сроков:На первом шаге мы релаксируем дедлайны всех работ, кроме листовой, в соответствии с предыдущим пунктом. В массиве * Класс <tex>\mathtt j{Job}</tex> хранятся работы, имеющие поле имеет поля <tex>\mathtt d</tex> {{---}} дедлайн. '''int''' i = 0 deque = , <tex>\varnothingmathtt {parents}</tex>{{---}} массив предков. '''for''' '''int''' k = 1 .. n * В переменной <font color=greentex> \mathtt i<// ищем tex> хранится лист в дереве. (Он один, из него будет производиться обход дерева </font> см. условие задачи) '''ifDeque<Job>''' j[k].parents =deque = <tex>\varnothing</tex> i = k <font color=green> // такая вершина только одна (intree-дерево из условия) </font>
deque.push(i)
'''while''' '''not''' deque.isEmpty
i '''Job''' j = deque.removeFirst() '''for''' '''int''' k '''in''' j[i].parents j[k].d = min(j[k].d, j[i].d - 1)
deque.addLast(k)
317
правок

Навигация