博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
洛谷P1287 盒子与球 数学
阅读量:6535 次
发布时间:2019-06-24

本文共 1122 字,大约阅读时间需要 3 分钟。

洛谷P1287 盒子与球 数学

第二类斯特林数
将 n 个 互不相同的球 放入 k 个互不相同的盒子中,且不能为空,求方案数

如果盒子相同的话用第二类斯特林数来做

s[n][k] 表示 将 n 个可区分的球 放进 k 个 不可区分的盒子中 的方案数
s[n][k] = s[n-1][k-1] + k*s[n-1][k]

s[n-1][k-1] 表示将 这个球单独列为 一份 ,也就是说这份里面只有一个求

s[n-1][k] 表示将 这个球放到其他份子中,然后总共 有 k个份子可以放

然后 现在 球盒互不相同了,那就乘以 m!好了

 

1 #include 
2 #include
3 #include
4 using namespace std ; 5 6 inline int read() 7 { 8 char ch = getchar() ; 9 int x = 0 ,f = 1 ;10 while(ch<'0'||ch>'9') { if(ch=='-') f = -1 ;ch = getchar() ; }11 while(ch>='0'&&ch<='9') { x = x*10+ch-48 ; ch = getchar() ; }12 return x*f ;13 }14 15 int n,k,ans ;16 int s[11][11] ; 17 18 inline int jiecheng(int n) 19 {20 int ans = 1 ;21 for(int i=2;i<=n;i++) ans*=i ; 22 return ans ; 23 }24 25 int main() 26 {27 n = read() ; k = read() ;28 s[ 1 ][ 1 ] = 1 ; 29 for(int i=2;i<=n;i++) 30 for(int j=1;j<=i;j++) 31 s[ i ][ j ] = s[i-1][j-1] + j*s[i-1][j] ;32 ans = s[n][k] * jiecheng(k) ; 33 printf("%d\n",ans) ; 34 return 0 ; 35 }

 

转载于:https://www.cnblogs.com/third2333/p/6943372.html

你可能感兴趣的文章
Tomcat LimitLatch
查看>>
WSDP
查看>>
Angularjs checkbox ng-true-value不支持中文
查看>>
Memory Management
查看>>
The Packaging Process in Yocto/OE
查看>>
golang--Redis最佳的Go语言驱动
查看>>
JQUERY 对 表格中的数据重排序
查看>>
Java中的finalize()
查看>>
程序员常用借口指南
查看>>
关于PXE网络安装linux系统中碰到的个别问题
查看>>
storm笔记一
查看>>
awk 常用方法
查看>>
Android网络框架实现之【Retrofit+RxJava】
查看>>
Android文件的加密与解密
查看>>
Ubuntu查看目录树形结构
查看>>
OSChina 周二乱弹 ——人和人之间的关系用通话时间来表述
查看>>
OSChina 周六乱弹 ——通常他们这么修复的bug,我都接受不了
查看>>
Log4j 2使用教程
查看>>
SOAP webserivce 和 RESTful webservice 对比及区别
查看>>
安装apache
查看>>