2009-07-14 15:33:58來源不明
數學少女的難題
做法:數學(遞迴)
感謝zhouyuchen的提供!!
預設p(n,0)=1
p(n,m)=p(n-1,m)+p(n-1,m-1)*n;
//少一個數字n的組合(有m個) 加一個n的組合*n(+n之後變成有m個)
/********************************************************/
#include<stdio.h>
#include<stdlib.h>
int p[1001][1001]={0};
main()
{
int n,m;
for(n=0;n<=1000;n++)
{
p[n][0]=1;
for(m=1;m<=n;m++)
p[n][m]=(p[n-1][m]+p[n-1][m-1]*n)%1572869;
}
while(scanf("%d %d",&n,&m)==2)
printf("%d\n",p[n][m]);
return 0;
}