题目链接:洛谷

我一开始不知道$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. Angular 学习笔记 (Angular 9 & ivy)

    refer : https://blog.angularindepth.com/all-you-need-to-know-about-ivy-the-new-angular-engine-9cde47 ...

  2. gulp删除目标文件中所有的console.log()语句——gulp-strip-debug

    1.安装npm包 npm install --save-dev gulp-strip-debug 2.使用 const gulp = require('gulp'); const stripDebug ...

  3. mvc伪静态

    方法一:IIS配置伪静态 方法二:项目配置伪静态 网站配置文件Web.config <system.webServer> <handlers> <add name=&qu ...

  4. 翻译-在10行代码之内创建容器化的.net core应用

    本文翻译自Hans Kilian的文章 Creating a containerized .NET core application in less than 10 lines of code htt ...

  5. WebApi 身份认 Basic基础认证

    <body> <div style="text-align:center;"> <div>用户名:<input type="te ...

  6. 转 实现类似QQ的窗体停靠

    [DllImport("User32.dll")] public static extern bool PtInRect(ref Rectangle Rects, Point lp ...

  7. JS的DOM和BOM

    * JavaScript分三个部分: ECMAScript标准:JS的基本的语法 DOM:Document Object Model --->文档对象模型----操作页面的元素 BOM:Brow ...

  8. iOS - OC 使用运行时来获取并修改类

    前言:          Objective C的runtime技术功能非常强大,能够在运行时获取并修改类的各种信息,包括获取方法列表.属性列表.变量列表,修改方法.属性,增加方法,属性等等,本文对相 ...

  9. map函数的应用

    map函数在Python中的应用 函数介绍: map() 会根据提供的函数对指定序列做映射. map(function, iterable, ...) 第一个参数function 以参数序列中的每一个 ...

  10. javascript原型原型链 学习随笔

    理解原型和原型链.需从构造函数.__proto__属性(IE11以下这个属性是undefined,请使用chrome调试).prototype属性入手. JS内置的好多函数,这些函数又被叫做构造函数. ...