Для решения этой задачи можно воспользоваться методом динамического программирования.
Обозначим f(n) - количество способов распределения 2n человек по шеренгам. При этом первым в первой шеренге будет стоять самый высокий человек.
f(0) = 1, так как если нет людей, то распределить их не нужно.f(1) = 1, так как есть только один способ разместить одного человека.
f(n) = C(2n, n) * f(n-1), где C(2n, n) - число сочетаний из 2n по n, или число Каталана.
Таким образом, общее количество способов разместить 2n человек по шеренгам - f(n).
Пример:Пусть у нас есть 4 человека. Тогда f(2) = C(4, 2) f(1) = 6 1 = 6 способов разместить их по шеренгам.
Для решения этой задачи можно воспользоваться методом динамического программирования.
Обозначим f(n) - количество способов распределения 2n человек по шеренгам. При этом первым в первой шеренге будет стоять самый высокий человек.
f(0) = 1, так как если нет людей, то распределить их не нужно.
f(1) = 1, так как есть только один способ разместить одного человека.
f(n) = C(2n, n) * f(n-1), где C(2n, n) - число сочетаний из 2n по n, или число Каталана.
Таким образом, общее количество способов разместить 2n человек по шеренгам - f(n).
Пример:
Пусть у нас есть 4 человека. Тогда f(2) = C(4, 2) f(1) = 6 1 = 6 способов разместить их по шеренгам.