博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[LGP2791] 幼儿园篮球题
阅读量:4678 次
发布时间:2019-06-09

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

你猜猜题怎么出出来的?

显然第\(i\)场的答案为

\[ \frac{1}{\binom{n_i}{m_i}\binom{n_i}{k_i}}\sum_{x=0}^{k_i}\binom{n_i}{m_i}\binom{m_i}{x}\binom{n_i-m_i}{k_i-x}x^L =\frac{1}{\binom{n_i}{k_i}}\sum_{x=0}^{k_i}\binom{m_i}{x}\binom{n_i-m_i}{k_i-x}x^L\\ \]
利用斯特林数进行变换
\[ \sum_{x=0}^{k_i}\binom{m_i}{x}\binom{n_i-m_i}{k_i-x}x^L =\sum_{x=0}^{k_i}\binom{m_i}{x}\binom{n_i-m_i}{k_i-x}\sum_{y=0}^{x}y!\binom{x}{y}\left\{\begin{matrix}L\\y\end{matrix}\right\}\\ =\sum_{y=0}^{k_i}y!\left\{\begin{matrix}L\\y\end{matrix}\right\} \sum_{x=y}^{k_i}\binom{x}{y}\binom{m_i}{x}\binom{n_i-m_i}{k_i-x}\\ =\sum_{y=0}^{k_i}y!\left\{\begin{matrix}L\\y\end{matrix}\right\} \sum_{x=y}^{k_i}\binom{m_i}{y}\binom{m_i-y}{x-y}\binom{n_i-m_i}{k_i-x}\\ =\sum_{y=0}^{k_i}y!\binom{m_i}{y}\left\{\begin{matrix}L\\y\end{matrix}\right\} \sum_{x=0}^{k_i-y}\binom{m_i-y}{x}\binom{n_i-m_i}{k_i-y-x}\\ =\sum_{y=0}^{k_i}y!\binom{m_i}{y}\left\{\begin{matrix}L\\y\end{matrix}\right\} \binom{n_i-y}{k_i-y} \]
发现\(y\)的实际上界为\(\min(k_i,m_i,L)\)不过\(1e5\),而询问仅\(2e2\),预处理第\(L\)行斯特林数,询问复杂度\(O(L)\)可以接受。

斯特林数的预处理。

最终答案为

\[ \sum_{i=1}^S\frac{k_i!(n_i-k_i)!}{n_i!}\sum_{y=0}^{k_i}y!\frac{m_i!(n_i-y)!}{y!(m_i-y)!(k_i-y)!(n_i-k_i)!}S(L,y)\\ =\sum_{i=1}^S\frac{k_i!m_i!}{n_i!}\sum_{y=0}^{k_i}\frac{(n_i-y)!}{(m_i-y)!(k_i-y)!}S(L,y) \]
显得十分的和谐。

此题卡常

#include 
#define IL inline #define ll long long using namespace std;const int N=8e5+10;const int M=2e7+10;const int mod=998244353;IL ll gi(){ ll x=0,f=1; char ch=getchar(); while(!isdigit(ch))f^=ch=='-',ch=getchar(); while(isdigit(ch))x=x*10+ch-'0',ch=getchar(); return f?x:-x;}int lmt,w[N],rev[N];IL int fpw(int x,int y) { int c=1; for(; y; y>>=1,x=(ll)x*x%mod) if(y&1) c=(ll)c*x%mod; return c;}IL void init(int n) { int l=0; lmt=1; while(lmt<=n) lmt<<=1, l++; for(int i=0; i
>1]>>1)|((i&1)<<(l-1)); int tmp=lmt>>1, wlmt=fpw(3,(mod-1)>>l); w[tmp]=1; for(int i=tmp+1; i
>u]=a[i]; for(int m=1; m

转载于:https://www.cnblogs.com/nosta/p/11180491.html

你可能感兴趣的文章
20172319 2018.03.12-19 《程序设计与数据结构》第2周学习总结
查看>>
BZOJ2244 [SDOI2011]拦截导弹 【cdq分治 + 树状数组】
查看>>
ASP.NET Web API 控制请求频率
查看>>
教你几种在SQLServer中删除重复数据方法(转)
查看>>
iOS中的图像处理(一)——基础滤镜
查看>>
Java中int类型和tyte[]之间转换及byte[]合并
查看>>
silverlight2 游戏 1 你能坚持多少秒
查看>>
数组元素java集合源代码分析(一)
查看>>
一边学习一边爱着梦着一边生活
查看>>
线性结构与非线性结构
查看>>
ID:12031 全排列
查看>>
SpringMVC注解版前台向后台传值的两种方式(IDEA)
查看>>
从Google Earth 中下载三维模型
查看>>
java.lang.ClassNotFoundException: org.hibernate.engine.FilterDefinition的解决方案
查看>>
柔性数组(用于结构体)
查看>>
讲解下for循环的用法,加深记忆
查看>>
使用Spring.Net
查看>>
002-BootStrap基本模板
查看>>
HttpClient使用详细教程
查看>>
Python黑科技:赋值技巧
查看>>