void find_factor(int sum,int n) //输入两个整数n和m,从数列1,2,3...n中随意取几个数,使其和等于m,要求列出所有的组合。
{
static int i = 0;
static int *array = new int[n];
int j;
if(sum<0 || n<0)
{
return;
}
else if (sum == 0)
{
for(j=0;j<i;++j)
cout<<array[j]<<" ";
cout<<endl;
return;
}
else
{
array[i++] = n;
find_factor(sum-n,n-1);
--i;
find_factor(sum,n-1);
}
}