【第二类Stirling数】Gym - 101147G - The Galactic Olympics
如果K>n,就无解;
如果K==n,就答案是P(n,n);
如果K<n,答案就是s(n,K)*P(K,K);
P为排列数,s为第二类斯特林数。
第二类斯特林数就是将n个球,划分为K个非空集合的方案数(无序),所以要再乘上集合数的全排列。
#include<cstdio>
using namespace std;
typedef long long ll;
#define MOD 1000000007ll
int T,n,K;
ll f[1010][1010],jc[1000010];
int main()
{
freopen("galactic.in","r",stdin);
f[1][1]=1;
for(int i=2;i<=1000;++i)
for(int j=1;j<=i;++j)
f[i][j]=(f[i-1][j-1]+(ll)j*f[i-1][j]%MOD)%MOD;
// for(int i=1;i<=10;++i)
// {
// for(int j=1;j<=i;++j)
// printf("%I64d ",f[i][j]);
// puts("");
// }
jc[0]=1;
for(int i=1;i<=1000000;++i)
jc[i]=jc[i-1]*(ll)i%MOD;
scanf("%d",&T);
for(;T;--T)
{
scanf("%d%d",&n,&K);
if(n==K)
{
ll ans=1;
for(int i=1;i<=K;++i)
ans=ans*(ll)i%MOD;
printf("%d\n",(int)ans);
}
else if(n>K)
printf("%d\n",(int)(f[n][K]*jc[K]%MOD));
else
puts("0");
}
return 0;
}
【第二类Stirling数】Gym - 101147G - The Galactic Olympics的更多相关文章
- Codeforces Gym - 101147G The Galactic Olympics
Discription Altanie is a very large and strange country in Mars. People of Mars ages a lot. Some of ...
- lightOJ 1326 Race(第二类Stirling数)
题目链接:http://lightoj.com/volume_showproblem.php?problem=1326 题意:有n匹马赛跑.问有多少种不同的排名结果.可以有多匹马的排名相同. 思路:排 ...
- [总结] 第二类Stirling数
上一道例题 我们来介绍第二类Stirling数 定义 第二类Stirling数实际上是集合的一个拆分,表示将n个不同的元素拆分成m个集合的方案数,记为 或者 .和第一类Stirling数不同的是,集合 ...
- 第二类Stirling数
第二类斯特林数 第二类Stirling数:S2(p, k) 1.组合意义:第二类Stirling数计数的是把p个互异元素划分为k个非空集合的方法数 2.递推公式: S2(0, 0) = 1 S2(p, ...
- [BZOJ5093]图的价值(NTT+第二类Stirling数)
5093: [Lydsy1711月赛]图的价值 Time Limit: 30 Sec Memory Limit: 256 MBSubmit: 250 Solved: 130[Submit][Sta ...
- LightOJ 1326 – Race 第二类Stirling数/
简单的模板题. 题意:问n匹马出现的不同排名数. 题解:可以使用DP,本质上还是第二类Stirling数(隔板法) #include <stdio.h> #include <iost ...
- HDU 2643 Rank:第二类Stirling数
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2643 题意: 有n个个选手参赛,问排名有多少种情况(可以并列). 题解: 简化问题: 将n个不同的元素 ...
- 第二类Stirling数初探 By cellur925
上午noi.ac崩崩崩了,栽在组合数学上,虽说最后在辰哥&Chemist的指导下A掉了此题,也发现自己组合数学太弱了qwq. 在luogu上找题,结果找到了一个第二类斯特林数的题(还是双倍经验 ...
- 自然数幂和——第一类Stirling数和第二类Stirling数
第一类Stirling数 首先设 $$S_k(n)=\sum_{i=0}^ni^k$$ 根据第一类斯特林数的定义(P是排列数,C是组合数,s是Stirling) $$C_n^k={P_n^k\over ...
随机推荐
- JavaScript的lazyload延迟加载是如何实现的
懒加载技术(简称lazyload)并不是新技术, 它是js程序员对网页性能优化的一种方案.lazyload的核心是按需加载.在大型网站中都有lazyload的身影,例如谷歌的图片搜索页,迅雷首页,淘宝 ...
- 修改innodb_flush_log_at_trx_commit参数提升insert性能
最近,在一个系统的慢查询日志里发现有个insert操作很慢,达到秒级,并且是比较简单的SQL语句,把语句拿出来到mysql中直接执行,速度却很快. 这种问题一般不是SQL语句本身的问题,而是在具体的应 ...
- [poj 3261]后缀数组+滑窗最小值
题目链接:http://poj.org/problem?id=3261 这个是可以交叉的重复串,所以用height就可以了,但是题目说让重复k次以上,也就是直接做一个k-1长度的滑窗最小值,从这些最小 ...
- Codeforces Round #515 (Div. 3) E. Binary Numbers AND Sum
E. Binary Numbers AND Sum 题目链接:https://codeforces.com/contest/1066/problem/E 题意: 给出两个用二进制表示的数,然后将第二个 ...
- HDU 多校对抗第三场 L Visual Cube
Problem L. Visual Cube Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 524288/524288 K (Java ...
- iOS 之持久化存储 plist、NSUserDefaults、NSKeyedArchiver、数据库
1.什么是持久化? 本人找了好多文章都没有找到满意的答案,最后是从孙卫琴写的<精通Hibernate:Java对象持久化技术详解>中,看到如下的解释,感觉还是比较完整的.摘抄如下: 狭义的 ...
- ES6学习笔记(一)——Promise
Promise 是 ES6 提供的一种异步编程的解决方案: 将异步操作以同步操作的流程表达出来,避免了层层嵌套的回调函数(解决异步函数回调地狱的问题).Promise 对象保存着异步操作的结果. 首先 ...
- 【BZOJ2527】【POI2011】Meteors [整体二分]
Meteors Time Limit: 60 Sec Memory Limit: 128 MB[Submit][Status][Discuss] Description 这个星球经常会下陨石雨.BI ...
- adt 运行时,显示no target selected.
检查adt\adt-bundle-windows-x86-20131030\sdk\system-images下面是否有相关image文件.
- MatserDetail自动展开
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Windo ...