题目链接:洛谷

我一开始不知道$N,M$有什么用处,懵逼了一会儿,结果才发现是输入数据范围。。。

$$\begin{aligned}\binom{n}{k}Ans&=\sum_{i=0}^k\binom{m}{i}\binom{n-m}{k-i}i^L \\&=\sum_{i=0}^k\binom{m}{i}\binom{n-m}{k-i}\sum_{j=0}^Lj!\binom{i}{j}\begin{Bmatrix}L \\ j\end{Bmatrix} \\&=\sum_{j=0}^Lj!\begin{Bmatrix}L \\ j\end{Bmatrix}\sum_{i=0}^k\binom{m}{i}\binom{n-m}{k-i}\binom{i}{j} \\&=\sum_{j=0}^Lj!\begin{Bmatrix}L \\ j\end{Bmatrix}\sum_{i=0}^k\binom{m}{j}\binom{m-j}{i-j}\binom{n-m}{k-i} \\&=\sum_{j=0}^L\frac{m!}{(m-j)!}\begin{Bmatrix}L \\j\end{Bmatrix}\sum_{i=0}^k\binom{m-j}{i-j}\binom{n-m}{k-i} \\&=\sum_{j=0}^L\frac{m!(n-j)!}{(k-j)!(n-k)!(m-j)!}\begin{Bmatrix}L \\j\end{Bmatrix}\end{aligned}$$

所以答案

$$Ans=\frac{m!k!}{n!}\sum_{i=0}^{\min(L,m,k)}\frac{(n-i)!}{(m-i)!(k-i)!}\begin{Bmatrix}L \\ i\end{Bmatrix}$$

上面第五行到第六行使用了范德蒙德卷积

$$\sum_{i=0}^k\binom{n}{i}\binom{m}{k-i}=\binom{n+m}{k}$$

组合意义:在$n+m$个元素中取$k$个,前$n$个元素中选了$i$个。

而且要注意$i$的范围,不然就会挂成15分

时间复杂度$O(L(\log L+S))$。

Luogu2791 幼儿园篮球题【斯特林数,数学】的更多相关文章

  1. 【洛谷2791】幼儿园篮球题(第二类斯特林数,NTT)

    [洛谷2791]幼儿园篮球题(第二类斯特林数,NTT) 题面 洛谷 题解 对于每一组询问,要求的东西本质上就是: \[\sum_{i=0}^{k}{m\choose i}{n-m\choose k-i ...

  2. 【题解】幼儿园篮球题(范德蒙德卷积+斯特林+NTT)

    [题解]幼儿园篮球题(NTT+范德蒙德卷积+斯特林数) 题目就是要我们求一个式子(听说叫做超几何分布?好牛逼的名字啊) \[ \sum_{i=1}^{S}\dfrac 1 {N \choose n_i ...

  3. 洛谷 P2791 幼儿园篮球题

    洛谷 P2791 幼儿园篮球题 https://www.luogu.org/problemnew/show/P2791 我喜欢唱♂跳♂rap♂篮球 要求的是:\(\sum_{i=0}^kC_m^iC_ ...

  4. 【洛谷2791】 幼儿园篮球题 第二类斯特林数+NTT

    求 \(\sum_{i=0}^{k}\binom{m}{i}\binom{n-m}{k-i}i^L\) \((1\leqslant n,m\leqslant 2\times 10^7,1\leqsla ...

  5. [LGP2791] 幼儿园篮球题

    你猜猜题怎么出出来的? 显然第\(i\)场的答案为 \[ \frac{1}{\binom{n_i}{m_i}\binom{n_i}{k_i}}\sum_{x=0}^{k_i}\binom{n_i}{m ...

  6. 洛谷 P2791 - 幼儿园篮球题(第二类斯特林数)

    题面传送门 首先写出式子: \[ans=\sum\limits_{i=0}^m\dbinom{m}{i}\dbinom{n-m}{k-i}·i^L \] 看到后面有个幂,我们看它不爽,因此考虑将其拆开 ...

  7. luogu P2791 幼儿园篮球题

    传送门 先看我们要求的是什么,要求的期望就是总权值/总方案,总权值可以枚举进球的个数\(i\),然后就应该是\(\sum_{i=0}^{k} \binom{m}{i}\binom{n-m}{k-i}i ...

  8. [BJOI2019]勘破神机(斯特林数+二项式定理+数学)

    题意:f[i],g[i]分别表示用1*2的骨牌铺2*n和3*n网格的方案数,求ΣC(f(i),k)和ΣC(g(i),k),对998244353取模,其中l<=i<=r,1<=l< ...

  9. 具体数学斯特林数-----致敬Kunth

    注意这里讲的是斯特林数而非斯特林公式. 斯特林数分两类:第一类斯特林数 和 第二类斯特林数. 分别记为. 首先描述第二类斯特林数. 描述为:将一个有n件物品的集合划分成k个非空子集的方法数. 比如集合 ...

随机推荐

  1. php 跳转页面

    header('location:./example.php'); header('refresh:2;url=./example.php');

  2. NOPI 读与写

    Excel读取和写入的完整代码using NPOI.HSSF.UserModel;using NPOI.SS.UserModel;using NPOI.XSSF.UserModel;using Sys ...

  3. Git pull记住密码

    在使用https git拉取代码时,每次git pull的时候都会让输入用户名和密码 进入项目目录 命令:git config --global credential.helper store 然后会 ...

  4. 《图解HTTP》摘录

    # 图解HTTP 第 1 章 了解Web及网络基础 1.1使用http协议访问web 客户端:通过发送请求获取服务器资源的Web浏览器等. Web使用一种名为 HTTP(HyperText Trans ...

  5. alt和title的区别

    alt是html标签的属性,而title既是html标签,又是html属性. 在图像标签img中,除了常用的宽度width和高度height属性之外,还有两个比较重要并且也会用到的属性,就是alt和t ...

  6. 【实战】SQL注入小脚本

    1.ORACLE布尔型盲注 import urllib import urllib2 import requests payloads = '_ABCDEFGHIJKLMNOPQRSTUVWXYZ' ...

  7. 多线程之NSOperation简介

    在iOS开发中,为了提升用户体验,我们通常会将操作耗时的操作放在主线程之外的线程进行处理.对于正常的简单操作,我们更多的是选择代码更少的GCD,让我们专注于自己的业务逻辑开发.NSOperation在 ...

  8. 修改Linux命令:ls为例

    Linux命令可以被修改,用于启动一些不起眼的程序. 操作方法如下: whereis ls cd /usr/bin mv ls ls_bak vim ls 新建的ls文件中 chmod +x ls c ...

  9. scrapy框架介绍

    一,介绍 Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架,非常出名,非常强悍.所谓的框架就是一个已经被集成了各种功能(高性能异步下载,队列,分布式,解析,持久化等)的具有很强通用性 ...

  10. centos6.5上安装git

    亲测有效 https://blog.csdn.net/wxy540843763/article/details/80197301