HDU 2512 一卡通大冒险(斯特灵数,贝尔数)
来源:互联网 发布:吴昕淘宝店 编辑:程序博客网 时间:2024/04/20 07:32
转载请注明出处,谢谢http://blog.csdn.net/acm_cxlove/article/details/7854526 by---cxlove
题目:将N张卡分成若干个集合,集合不为空,有多少种分法。
http://acm.hdu.edu.cn/showproblem.php?pid=2512
显然集合个数为1,2……n。也就是将N张卡放到i个集合内。
这类组合问题用第二类斯特灵数可以解决
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个元素集合分到非空且不可区分例子的划分个数。详见组合数学
#include<iostream>#include<cmath>#include<cstdio>#include<cstring>#define LL long long#define eps 1e-7#define MOD 1000using namespace std;int stir2[2005][2005]={1};int bell[2005];int main(){ for(int i=1;i<=2000;i++){ stir2[i][0]=0; stir2[i][i]=1; for(int j=1;j<i;j++) stir2[i][j]=(stir2[i-1][j-1]+j*stir2[i-1][j])%MOD; } for(int i=1;i<=2000;i++){ bell[i]=0; for(int j=0;j<=i;j++) bell[i]=(bell[i]+stir2[i][j])%MOD; } int n,t; cin>>t; while(t--){ cin>>n; cout<<bell[n]<<endl; } return 0;}
- HDU 2512 一卡通大冒险(斯特灵数,贝尔数)
- hdu - 2512 一卡通大冒险 (斯特灵数 && 贝尔数)
- hdu 2521 一卡通大冒险 (斯特灵数,贝尔数)
- Hdu 2512 一卡通大冒险 (贝尔数)
- HDU2512 一卡通大冒险【斯特灵数,贝尔数】
- [省选前题目整理][HDU 2512]一卡通大冒险(第二类斯特林数+贝尔数)
- HDU 2512 一卡通大冒险(第二类 stirling 数)
- hdu 2512 一卡通大冒险
- hdu 2512 一卡通大冒险
- hdu 2512 一卡通大冒险
- HDU 2512 一卡通大冒险
- hdu 2512 一卡通大冒险
- hdu 2512 一卡通大冒险
- HDU 2512 一卡通大冒险
- hdu 2512 一卡通大冒险
- hdu 一卡通大冒险[Bell数]
- hdu 2512 一卡通大冒险 (DP)
- hdu 2512 一卡通大冒险 (水题)
- 数据库总结
- 装载驱动遇到的问题【待解决】
- Using the VC 2005 shared CRT/MFC (DLL) without a manifest is not supported!
- update for winform
- Linux大文件传输
- HDU 2512 一卡通大冒险(斯特灵数,贝尔数)
- VS2005 独立应用程序和并行程序集的概念
- TQ2440裸奔三部曲例1.1
- Android training 管理Activity生命周期之启动Activity(Starting an Activity)
- STL 设计模式总述
- MFC初窥(MFC运行机制,孙鑫C++第三讲笔记整理)
- Android training 管理Activity生命周期之暂停/恢复Activity(Pausing and Resuming an Activity)
- poj 1887 最长下降子序列
- 说一下你眼中的Android的优点和不足之处(面试华为的人有被问过)!!!