本文主要是介绍类斯特灵数列_分盒子,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
将n个有标记的球放在m个没有标记的盒子里边,求解一共有多少放法?
放置规则:m=0,f(m,n)=0;
m=1=n,f(m,n)=1;
解题思路:考虑第m个球的方法,假如第m个球单独放置,有f(m-1,n-1)种方法;
假如第m个球与其他球在一起,有n*f(m-1,n)种放法。
放法总数:f(m,n)=f(m-1,n-1)+n*f(m-1,n)。
#include<stdio.h>int main()
{int a[20][20]={0};int i,j;a[0][0]=0;a[1][1]=1;for(i=2;i<20;i++){for(j=0;j<=i;j++){if(j==i)a[i][j]=1;else if(j==1)a[i][j]=1;else if(j==0)a[i][j]==0;elsea[i][j]=j*a[i-1][j]+a[i-1][j-1]; }}printf("Please enter the date that you want output\n");while(~scanf("%d %d",&i,&j)){printf("%d\n",a[i][j]);}return 0;
}
这篇关于类斯特灵数列_分盒子的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!