码迷,mamicode.com
首页 > 其他好文 > 详细

HDU -2512-一卡通大冒险

时间:2014-09-10 12:16:50      阅读:166      评论:0      收藏:0      [点我收藏+]

标签:http   io   ar   for   问题   sp   代码   c   amp   

题目链接

http://acm.hdu.edu.cn/showproblem.php?pid=2512

题目涉及到了用第二类斯特灵数;

何谓用第二类斯特灵数:

S(P,K)=S(P-1,K-1)+K*S(P-1,K);表示P个元素放入K个不可区分的集合中而且集合不为空的划分个数。

那么问题的解为sigma(S(P,i))  (P=>i>=1) 这个和称为bell数。

Bell数是将P个元素集合分到非空且不可区分例子的划分个数。详见组合数学

 

题目大意可为 : 将N张卡分成若干个集合,集合不为空,有多少种分法。

我的AC代码

#include<stdio.h>

__int64 a[2005][2005];

int main(void)
{
int i,j;
for(i=1; i<=2000; i++)
{
for(j=1; j<=i; j++)
{
if(i==j)
a[i][j]=1;
else if(j==1)
a[i][j]=1;
else
a[i][j]=(a[i-1][j-1]%1000+j*a[i-1][j]%1000)%1000;
}
}
__int64 n,s;
int t;
scanf("%d",&t);
while(t--)
{
scanf("%I64d",&n);
s=0;
for(i=1; i<=n; i++)
s=(s+a[n][i])%1000;
printf("%I64d\n",s);
}
return 0;
}

HDU -2512-一卡通大冒险

标签:http   io   ar   for   问题   sp   代码   c   amp   

原文地址:http://www.cnblogs.com/liudehao/p/3964065.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!