将正整数 n 表示成一系列正整数之和
n = n1+ n2 +……+ nk
正整数n的不同划分个数称为正整数n的划分数
记作P(n)
整数划分问题就是求出P(n)
int q(int n,int m)
{
if(n<1||m<1) return 0;
if(n==1||m==1) return 1;
if(m>n) return q(n,n);
if(m==n) return 1+q(n,m-1);
return q(n,m-1)+q(n-m,m);
}
将正整数 n 表示成一系列正整数之和
n = n1+ n2 +……+ nk
正整数n的不同划分个数称为正整数n的划分数
记作P(n)
整数划分问题就是求出P(n)
int q(int n,int m)
{
if(n<1||m<1) return 0;
if(n==1||m==1) return 1;
if(m>n) return q(n,n);
if(m==n) return 1+q(n,m-1);
return q(n,m-1)+q(n-m,m);
}