Codevs 1039 :数的划分

总时间限制: 

1000ms
 
内存限制: 
65536kB
描述

将整数n分成k份,且每份不能为空,任意两份不能相同(不考虑顺序)。

例如:n=7,k=3,下面三种分法被认为是相同的。

1,1,5; 1,5,1; 5,1,1;

问有多少种不同的分法。 输出:一个整数,即不同的分法。

输入
两个整数n,k (6 < n <= 200,2 <= k <= 6),中间用单个空格隔开。
输出
一个整数,即不同的分法。
样例输入
7 3
样例输出
4
提示
四种分法为:1,1,5;1,2,4;1,3,3;2,2,3。
来源
NOIP2001复赛 提高组 第二题
代码:(太简单,不说咧,直接上代码)
复制代码
 1 #include<iostream>
 2 #include<cstdio>
 3 #include<cstring>
 4 using namespace std;
 5 int n,m,a[201][201];
 6 int main()
 7 {
 8     scanf("%d%d",&n,&m);
 9     for(int i=1;i<=n;i++) a[i][i]=1,a[i][1]=1;
10     for(int i=2;i<=n;i++)
11       for(int j=1;j<i;j++)
12         a[i][j]=a[i-j][j]+a[i-1][j-1];
13     printf("%d",a[n][m]);
14     
15     return 0;
16 }
复制代码

 

 
posted @   浮华的终成空  阅读(246)  评论(1编辑  收藏  举报

Contact with me

点击右上角即可分享
微信分享提示