原文:https://blog.csdn.net/zongjiaxiao/article/details/53223642
将n个人分成若干队,每队人数可以是1、2或者3人。
已知n,求组队方案数。
Input
输入包含多组测试数据(约1000组),每组数据占一行,包含一个数字n(0<=n<=20),表示ACM集训队的队员人数;n为0,表示输入结束。
Output
请输出n个队员所有可能的组队方案数,每组输出占一行。
Sample Input
1
2
3
4
5
0
Sample Output
1
2
5
14
46
记dp[i]为i个人分组的方案数。显然dp[1]=1,dp[2]=2,dp[3]=5。i>=4时,考虑最后一个人,他可以一人一队,对方案数的贡献是dp[i-1];也可以和另外i-1人中的一人组队,贡献是C(i-1,1)xdp[i-2];还可以和另外i-1人中的两人组队,贡献是C