Количество разбиений на слагаемые на С++ Дано натуральное число N. Найдите количество его разбиений на натуральные слагаемые. Два разбиения, отличающиеся только порядком слагаемых, будем считать за одно.
Например, для N=5 существует 7 различных разбиений:
5=5
5=4+1
5=3+2
5=3+1+1
5=2+2+1
5=2+1+1+1
5=1+1+1+1+1
109
135
Ответы на вопрос:
#include <stdio.h>
int d[100][100];
int dec(int n, int k) {
if ( n >= 0 && k >= 0 && d[n][k] > 0 ) return d[n][k];
if ( n < 0 ) return 0;
if ( n <= 1 || k == 1 ) return 1;
d[n][k] = dec(n, k-1) + dec(n-k, k);
return d[n][k];
}
int main() {
int m, i, j;
scanf("%d", &m);
for (i = 0; i < m; i++) {
for (j = 0; j < m; j++) {
d[i][j] = -1;
}
}
printf("%d\n", dec(m, m));
return 0;
}
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Информатика
-
lizagolovashko18.03.2023 22:04
-
Darina0202008.03.2022 04:16
-
1шрус22012.05.2023 02:21
-
sashafedorishyn01.08.2022 10:28
-
Chvrv02.05.2022 19:42
-
хадЯ6605.11.2020 11:39
-
Nihilagay24.03.2021 14:58
-
AngreilKyzmun21.02.2020 09:26
-
Крутойбрат22.02.2020 16:42
-
ashatsejtenov30.11.2022 17:31
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.