Изменения

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

Получение следующего объекта

172 байта убрано, 20:35, 26 ноября 2014
Специализация алгоритма для генерации следующего разбиения на слагаемые
<code>
<font color=green>// <tex>b</tex> {{---}} список, содержащий разбиение данного числа, <tex>lengthb.size</tex>{{---}} его размер.</font> '''function''' nextPartition(var b: list<int>b): list<int> '''var''' i : '''integer''' '''begin'''
b[b.size]--
b[b.size - 1]++
'''if''' b[b.size - 1] > b[b.size] '''then''' '''begin'''
b[b.size - 1] += b[b.size]
b.popremove(b.size()) '''end'''
'''else'''
'''begin''' '''while''' b[b.size - 1] * 2 <= b[b.size] '''do''' '''begin'''
b.add(b[b.size] - b[b.size - 1])
b[b.size - 1] = b[b.size - 2]
'''end'''
'''end'''
'''return''' b
'''end'''
</code>
Анонимный участник

Навигация