Изменения

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

O2Cmax

1 байт добавлено, 20:54, 15 мая 2016
Псевдокод
==Псевдокод==
<tex>I \leftarrow = \varnothing </tex> <tex>J \leftarrow = \varnothing </tex> <tex>C_{max} \leftarrow = \max \{\sum \limits_{i = 1}^{n} a_i, \sum \limits_{i = 1}^{n} b_i, \max \limits_{i = 1}^{n}\{a_i + b_{i}\}\}</tex> '''for ''' <tex>i = 1 \dots </tex> '''to''' <tex>n</tex> '''if ''' <tex>a_{i} \leqslant b{i}</tex> <tex> I \leftarrow = I \cup \{i\} </tex> '''else''' <tex> J \leftarrow = J \cup \{i\} </tex>
Найти <tex>x</tex>, где <tex>a_{x} = \max \limits_{i \in I} \{a_{i}\}</tex>
Найти <tex>y</tex>, где <tex>b_{y} = \max \limits_{i \in J} \{b_{i}\}</tex>
'''if ''' <tex>a_{x} < b_{y}</tex>
Поменять местами первый и второй станок
Пересчитать <tex>I, J, x</tex>
От правой границы {{---}} <tex>C_{max}</tex> на первом станке расставляем расписание для <tex>\{x\}</tex>, затем для <tex>J</tex>
От правой границы {{---}} <tex>C_{max}</tex> на втором станке расставляем расписание для <tex>J</tex><br/>
'''if ''' станки меняли местами
поменять их обратно
251
правка

Навигация