level 6
果断2L不杯具!!! 刷点字等毕业~~
求粉 !!秒回!!!
2010年06月07日 12点06分
2
level 1
是这种麼?
6
5 1
4 2
4 1 1
3 3
3 2 1
3 1 1 1
2 2 2
2 2 1 1
2 1 1 1 1
1 1 1 1 1 1
2010年06月07日 12点06分
3
level 1
第一种:
15为例
1:2位 从大到小
14 1
13 2
12 3
11 4
10 5
9 6
8 7
2:3位 从大到小
13 1 1
12 2 1
11 3 1
11 2 2
10 4 1
10 3 2
9 5 1
9 4 2
9 3 3
8 6 1
8 5 2
8 4 3
7 7 1
7 6 2
7 5 3
7 4 4
依此类推。没试过。
2010年06月07日 12点06分
8
level 1
如果是求一共有多少个拆分数的话
int a(int n,int m) {
if((n <1)||(m <1)){
return 0;
}
if((n==1)||(m==1)){
return 1;
}
if(n<m){
return a (n,n);
}
if(n>m){
return a(n,m-1)+a(n-m,m);
}
if(n==m){
return a(n,m-1)+1;
}
}
int main() {
int b;
scanf("%d",&b);
printf("%d\n",a(b,b));
}
2010年06月07日 13点06分
9
level 1
第二种:
6
1 1 1 1 1 1
2 1 1 1 1
2 2 1 1
2 2 2
2 1 1 1 1
3 1 1 1
3 2 1
3 3
2 2 1 1
4 1 1
4 2
5 1
由于分支2 1 1 1 1和分支2 2 1 1
减去两次。
这种算法可用递归。
2010年06月07日 13点06分
10
level 1
楼主跑了?
没验证过,楼主自己试一下。成功了发我短信。
2010年06月07日 13点06分
11