首页 > 代码库 > 「递归」拆分整数

「递归」拆分整数

12.11第一步:拆分整数为正整数之和的个数

 1 #include<stdio.h>
 2 int qw(int m,int n)
 3 {
 4     int i,count=0;
 5     if (m==n||n==1)    
 6         return 1;
 7     else if (m>n)
 8     {
 9         for(i=n;i>=1;i--)                
10             count=count+qw(m-n,i);
11         return count;
12     }
13     else if(m<n)
14         return 0;
15 }
16 int main()
17 {
18     int m,i,count=0;
19     scanf("%d",&m);
20     for (i=m;i>=1;i--)
21         count=count+qw(m,i);
22     printf("%d\n",count);
23     return 0;
24 }

 第二步:如何实现拆分

「递归」拆分整数