Составление разбиений — различия между версиями
Материал из ALL
Строка 1: | Строка 1: | ||
− | |||
'''Составление разбиений''' — это алгоритм ([[комбинаторика|комбинаторная]] операция) получения разложений числа '''n''' на натуральные слагаемые. | '''Составление разбиений''' — это алгоритм ([[комбинаторика|комбинаторная]] операция) получения разложений числа '''n''' на натуральные слагаемые. | ||
− | + | == Обозначения == | |
Введём обозначения: | Введём обозначения: | ||
Строка 15: | Строка 14: | ||
'''{R<sub>1</sub>,R<sub>2</sub>,…,R<sub>k</sub>}''' – разбиение числа '''n''' на '''k''' натуральных слагаемых. | '''{R<sub>1</sub>,R<sub>2</sub>,…,R<sub>k</sub>}''' – разбиение числа '''n''' на '''k''' натуральных слагаемых. | ||
− | |||
== Алгоритм разбиений == | == Алгоритм разбиений == | ||
Входные данные: '''n'''. | Входные данные: '''n'''. | ||
[[файл:КОМ41.JPG]] | [[файл:КОМ41.JPG]] | ||
− | |||
== Пример разбиений == | == Пример разбиений == | ||
При '''n=10''' получаем 42 разбиения: | При '''n=10''' получаем 42 разбиения: | ||
[[файл:КОМ43.JPG]] | [[файл:КОМ43.JPG]] | ||
− | |||
== Другие алгоритмы: == | == Другие алгоритмы: == | ||
+ | *[[наибольший общий делитель]]; | ||
+ | *[[наименьшее общее кратное]]; | ||
+ | *[[проверка кратности]]; | ||
+ | *[[деление по модулю]]; | ||
+ | *[[получение простых чисел]]; | ||
+ | *[[разложение на множители]]; | ||
*[[составление перестановок]]; | *[[составление перестановок]]; | ||
*[[составление сочетаний]]; | *[[составление сочетаний]]; | ||
*[[составление размещений]]; | *[[составление размещений]]; | ||
+ | *[[составление разбиений]]; | ||
*[[сортировка]]; | *[[сортировка]]; | ||
*[[алгоритм определения мест]]; | *[[алгоритм определения мест]]; | ||
− | *[[ | + | *[[метод математической индукции]]; |
− | *[[ | + | *[[схема примитивной рекурсии]]; |
− | *[[ | + | *[[система счисления]]. |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
== Ссылки == | == Ссылки == | ||
* [[Участник:Logic-samara]] | * [[Участник:Logic-samara]] | ||
[[Категория:Дискретная математика]][[Категория:Алгоритмы]][[Категория:Комбинаторика]] | [[Категория:Дискретная математика]][[Категория:Алгоритмы]][[Категория:Комбинаторика]] |
Версия 07:06, 15 января 2016
Составление разбиений — это алгоритм (комбинаторная операция) получения разложений числа n на натуральные слагаемые.
Обозначения
Введём обозначения:
n – натуральное число;
t – порядковый номер разбиения;
pj – j-ое натуральное слагаемое;
mj – счётчик j-ого натурального слагаемого;
k – число натуральных слагаемых разбиения, равное сумме счётчиков;
{R1,R2,…,Rk} – разбиение числа n на k натуральных слагаемых.
Алгоритм разбиений
Входные данные: n.
Пример разбиений
При n=10 получаем 42 разбиения:
Другие алгоритмы:
- наибольший общий делитель;
- наименьшее общее кратное;
- проверка кратности;
- деление по модулю;
- получение простых чисел;
- разложение на множители;
- составление перестановок;
- составление сочетаний;
- составление размещений;
- составление разбиений;
- сортировка;
- алгоритм определения мест;
- метод математической индукции;
- схема примитивной рекурсии;
- система счисления.