Составление распределений — различия между версиями

Материал из ALL
Перейти к: навигация, поиск
м
Строка 22: Строка 22:
  
 
[[файл:КОМ53.JPG]]
 
[[файл:КОМ53.JPG]]
== Другие алгоритмы: ==
+
== [[Комбинаторные алгоритмы|Другие алгоритмы:]] ==
 
{{Список КА}}
 
{{Список КА}}
 
== Ссылки ==
 
== Ссылки ==
* [[Участник:Logic-samara]]  
+
*[[Участник:Logic-samara]]  
[[Категория:Дискретная математика]][[Категория:Алгоритмы]][[Категория:Комбинаторика]]
+
[[Категория:Дискретная математика]][[Категория:Комбинаторика]][[Категория:Алгоритмы]]

Версия 07:05, 30 января 2017

Составление распределений — это алгоритм (комбинаторная операция) получения разложений числа n на k слагаемых, включая нулевые слагаемые.

Обозначения

Введём обозначения:

n – натуральное число;

t – порядковый номер распределения;

k – число элементов распределения;

{R1,R2,…,Rk} – распределение числа n среди k элементов.

Основная идея алгоритма распределений числа n среди k элементов состоит в следующем: в получении разбиений числа n на не более, чем k слагаемых, добавлении нулевых слагаемых до k элементов и переборе перестановок с повторениями из k элементов для каждого разбиения.

Алгоритм распределений

Входные данные: n; k.

КОМ51.JPG

  • Заметим, что для любого распределения числа n сумма его k элементов равна числу n.

Пример

При n=6, k=3 получаем 28 распределений:

КОМ53.JPG

Другие алгоритмы:

Ссылки