关于二项式

组合数

(nm)\dbinom{n}{m}(mn):从 nnn 个物品中选出 mmm 个的方案数。

  • (nm)=n!m!(n−m)!=nm‾m!\dbinom{n}{m}=\dfrac{n!}{m!(n-m)!}=\dfrac{n^{\underline{m}}}{m!}(mn)=m!(nm)!n!=m!nm
    (这个式子只依靠经典的组合意义,所以只在 0≤m≤n0\leq m\leq n0mn 时确保成立。)
    推论:
    对称性(nm)=(nn−m)\dbinom{n}{m}=\dbinom{n}{n-m}(mn)=(nmn)
    吸收/释放(nm)=nm(n−1m−1)\dbinom{n}{m}=\dfrac{n}{m}\dbinom{n-1}{m-1}(mn)=mn(m1n1)

  • 递推公式(nm)=(n−1m)+(n−1m−1)\dbinom{n}{m}=\dbinom{n-1}{m}+\dbinom{n-1}{m-1}(mn)=(mn1)+(m1n1)
    推论:
    平行求和∑i=0n(r+ii)=(r+n+1n)\sum\limits_{i=0}^{n}\dbinom{r+i}{i}=\dbinom{r+n+1}{n}i=0n(ir+i)=(nr+n+1)
    证明:∑i=0n(r+ii)=(r0)+(r+11)+(r+22)+...+(r+nn)=(r+10)+(r+11)+(r+22)+...+(r+nn)=(r+21)+(r+22)+...+(r+nn)=(r+32)+...+(r+nn)=(r+n+1n)\sum\limits_{i=0}^{n}\binom{r+i}{i}\\=\binom{r}{0}+\binom{r+1}{1}+\binom{r+2}{2}+...+\binom{r+n}{n}\\=\binom{r+1}{0}+\binom{r+1}{1}+\binom{r+2}{2}+...+\binom{r+n}{n}\\=\binom{r+2}{1}+\binom{r+2}{2}+...+\binom{r+n}{n}\\=\binom{r+3}{2}+...+\binom{r+n}{n}\\=\binom{r+n+1}{n}i=0n(ir+i)=(0r)+(1r+1)+(2r+2)+...+(nr+n)=(0r+1)+(1r+1)+(2r+2)+...+(nr+n)=(1r+2)+(2r+2)+...+(nr+n)=(2r+3)+...+(nr+n)=(nr+n+1)
    上指标求和∑i=0n(im)=(n+1m+1)\sum\limits_{i=0}^{n}\dbinom{i}{m}=\dbinom{n+1}{m+1}i=0n(mi)=(m+1n+1)
    证明:∑i=0n(im)=(mm)+(m+1m)+(m+2m)+...+(nm)=(m+1m+1)+(m+1m)+(m+2m)+...+(nm)=(m+2m+1)+(m+2m)+...+(nm)=(m+3m+1)+...+(nm)=(n+1m+1)\sum\limits_{i=0}^{n}\binom{i}{m}\\=\binom{m}{m}+\binom{m+1}{m}+\binom{m+2}{m}+...+\binom{n}{m}\\=\binom{m+1}{m+1}+\binom{m+1}{m}+\binom{m+2}{m}+...+\binom{n}{m}\\=\binom{m+2}{m+1}+\binom{m+2}{m}+...+\binom{n}{m}\\=\binom{m+3}{m+1}+...+\binom{n}{m}\\=\binom{n+1}{m+1}i=0n(mi)=(mm)+(mm+1)+(mm+2)+...+(mn)=(m+1m+1)+(mm+1)+(mm+2)+...+(mn)=(m+1m+2)+(mm+2)+...+(mn)=(m+1m+3)+...+(mn)=(m+1n+1)

  • 经典二项式定理(x+y)k=∑i=0k(ki)xiyk−i(x+y)^k=\sum\limits_{i=0}^{k}\dbinom{k}{i}x^iy^{k-i}(x+y)k=i=0k(ik)xiyki

  • 范德蒙德卷积
    结论(n+mk)=∑i=0k(ni)(mk−i)\dbinom{n+m}{k}=\sum\limits_{i=0}^{k}\dbinom{n}{i}\dbinom{m}{k-i}(kn+m)=i=0k(in)(kim)
    证明:首先显然有 (1+x)n+m=(1+x)n(1+x)m(1+x)^{n+m}=(1+x)^n(1+x)^m(1+x)n+m=(1+x)n(1+x)m
    那么∑k=0n+m(n+mk)xk=∑i=0n(ni)xi∑j=0m(mj)xj\sum\limits_{k=0}^{n+m}\binom{n+m}{k}x^k=\sum\limits_{i=0}^{n}\binom{n}{i}x^i\sum\limits_{j=0}^{m}\binom{m}{j}x^jk=0n+m(kn+m)xk=i=0n(in)xij=0m(jm)xj
    ∑k=0n+m(n+mk)xk=∑i=0n∑j=0m(ni)(mj)xi+j\sum\limits_{k=0}^{n+m}\binom{n+m}{k}x^k=\sum\limits_{i=0}^{n}\sum\limits_{j=0}^{m}\binom{n}{i}\binom{m}{j}x^{i+j}k=0n+m(kn+m)xk=i=0nj=0m(in)(jm)xi+j
    ∑k=0n+m(n+mk)xk=∑k=0n+m∑i=0k(ni)(mk−i)xk\sum\limits_{k=0}^{n+m}\binom{n+m}{k}x^k=\sum\limits_{k=0}^{n+m}\sum\limits_{i=0}^{k}\binom{n}{i}\binom{m}{k-i}x^{k}k=0n+m(kn+m)xk=k=0n+mi=0k(in)(kim)xk
    [xk]∑k=0n+m(n+mk)xk=[xk]∑k=0n+m∑i=0k(ni)(mk−i)xk[x^k]\sum\limits_{k=0}^{n+m}\binom{n+m}{k}x^k=[x^k]\sum\limits_{k=0}^{n+m}\sum\limits_{i=0}^{k}\binom{n}{i}\binom{m}{k-i}x^{k}[xk]k=0n+m(kn+m)xk=[xk]k=0n+mi=0k(in)(kim)xk
    (n+mk)=∑i=0k(ni)(mk−i)\binom{n+m}{k}=\sum\limits_{i=0}^{k}\binom{n}{i}\binom{m}{k-i}(kn+m)=i=0k(in)(kim)
    推论
    ∑i=1n(ni)(ni−1)=(2nn−1)\sum\limits_{i=1}^n\dbinom ni\dbinom {n}{i-1}=\dbinom {2n}{n-1}i=1n(in)(i1n)=(n12n)
    证明:(2nn−1)=∑i=0n−1(ni)(nn−1−i)=∑i=0n−1(ni)(ni+1)=∑i=1n(ni)(ni−1)\binom {2n}{n-1}= \sum\limits_{i=0}^{n-1}\binom ni\binom n{n-1-i}=\sum\limits_{i=0}^{n-1}\binom ni\binom n{i+1}=\sum\limits_{i=1}^{n}\binom ni\binom n{i-1}(n12n)=i=0n1(in)(n1in)=i=0n1(in)(i+1n)=i=1n(in)(i1n)
    ∑i=0m(ni)(mi)=(n+mm)\sum\limits_{i=0}^m\dbinom ni\dbinom mi=\dbinom {n+m}mi=0m(in)(im)=(mn+m)
    证明:∑i=0m(ni)(mi)=∑i=0m(ni)(mm−i)=(n+mm)\sum\limits_{i=0}^m\binom ni\binom mi=\sum\limits_{i=0}^m\binom ni\binom m{m-i}=\binom {n+m}mi=0m(in)(im)=i=0m(in)(mim)=(mn+m)

广义二项式系数

广义二项式系数 : (αi)=αi‾i!\dbinom{\alpha}{i}=\dfrac{\alpha^{\underline {i}}}{i!}(iα)=i!αi
α\alphaα可以是实数(或者更多?))

  • 广义二项式定理(x+y)α=∑i=0∞(αi)xiyk−i(x+y)^{\alpha}=\sum\limits_{i=0}^{\infty}\dbinom{\alpha}{i}x^iy^{k-i}(x+y)α=i=0(iα)xiyki
    (普通二项式定理求和到α\alphaα就停下,是因为之后的组合数都是000,可弃掉)
  • 上指标反转 :认识和处理上指标为负(整)数的组合数。
    (rk)=(−1)k(k−r−1k)\dbinom{r}{k}=(-1)^k\dbinom{k-r-1}{k}(kr)=(1)k(kkr1)
    证明:rk‾k!=(−1)k(−r)k‾k!=(−1)k(−r)(−r+1)...(−r+k−1)k!=(−1)k(k−r−1)k‾k!\frac{r^{\underline{k}}}{k!}=\frac{(-1)^k(-r)^{\overline{k}}}{k!}=\frac{(-1)^k(-r)(-r+1)...(-r+k-1)}{k!}=\frac{(-1)^k(k-r-1)^{\underline{k}}}{k!}k!rk=k!(1)k(r)k=k!(1)k(r)(r+1)...(r+k1)=k!(1)k(kr1)k
  • 取一半:处理 (2nn)\dbinom{2n}{n}(n2n) 形组合数。
    xk‾(x−12)k‾=(2x)2k‾22kx^{\underline{k}}(x-\frac{1}{2})^{\underline{k}}=\frac{(2x)^{\underline{2k}}}{2^{2k}}xk(x21)k=22k(2x)2k 知,
    nn‾(n−12)n‾=(2n)2n‾22nn^{\underline{n}}(n-\frac{1}{2})^{\underline{n}}=\frac{(2n)^{\underline{2n}}}{2^{2n}}nn(n21)n=22n(2n)2n
    nn‾(n−12)n‾=(2n)n‾nn‾22nn^{\underline{n}}(n-\frac{1}{2})^{\underline{n}}=\frac{(2n)^{\underline{n}}n^{\underline{n}}}{2^{2n}}nn(n21)n=22n(2n)nnn
    等式两边同时除以(n!)2(n!)^2(n!)2,得到
    (nn)(n−12n)=122n(2nn)(nn)\binom{n}{n}\binom{n-\frac{1}{2}}{n}=\frac{1}{2^{2n}}\binom{2n}{n}\binom{n}{n}(nn)(nn21)=22n1(n2n)(nn)
    (n−12n)=14n(2nn)\binom{n-\frac{1}{2}}{n}=\frac{1}{4^n}\binom{2n}{n}(nn21)=4n1(n2n)
    反转上指标:
    (−1)n(12−1n)=14n(2nn)(-1)^n\binom{\frac{1}{2}-1}{n}=\frac{1}{4^n}\binom{2n}{n}(1)n(n211)=4n1(n2n)
    (2nn)=(−4)n(−12n){\color{Goldenrod}\dbinom{2n}{n}=(-4)^n\dbinom{-\frac{1}{2}}{n} }(n2n)=(4)n(n21)
    ∑i=0∞(2ii)xi=∑i=0∞(−12i)(−4x)i×1(−12−i)=(1−4x)−12{\color{Goldenrod}\sum\limits_{i=0}^{\infty}\dbinom{2i}{i}x^i=\sum\limits_{i=0}^{\infty}\dbinom{-\frac{1}{2}}{i}(-4x)^i\times 1^{(-\frac{1}{2}-i)}=(1-4x)^{-\frac{1}{2}}}i=0(i2i)xi=i=0(i21)(4x)i×1(21i)=(14x)21
  • 阶乘幂的二项式定理
    nnn 是自然数时,有
    (x+y)n‾=∑i=0n(ni)xi‾yn−i‾(x+y)^{\underline{n}}=\sum\limits_{i=0}^n\dbinom{n}{i}x^{\underline i}y^{\underline{n-i}}(x+y)n=i=0n(in)xiyni
    (x+y)n‾=∑i=0n(ni)xi‾yn−i‾(x+y)^{\overline{n}}=\sum\limits_{i=0}^n\dbinom{n}{i}x^{\overline i}y^{\overline{n-i}}(x+y)n=i=0n(in)xiyni

二项式反演

各种反演总结

差分与前缀和

nnn 阶差分是 : Δnf(x)=∑i=0n(ni)(−1)n−if(x+i)\Delta^{n} f(x)=\sum\limits_{i=0}^n\dbinom{n}{i}(-1)^{n-i}f(x+i)Δnf(x)=i=0n(in)(1)nif(x+i)
nnn 阶前缀和是 : Σnf(x)=∑i=0(n+i−1i)f(x−i)\Sigma^{n} f(x)=\sum\limits_{i=0}\dbinom{n+i-1}{i}f(x-i)Σnf(x)=i=0(in+i1)f(xi)(注意,没有指明上界)

牛顿级数

Ri(x)R_i(x)Ri(x) 是关于 xxxiii 次多项式,我们总能在系数合适的时候用 ∑i=0mciRi(x)\sum\limits_{i=0}^mc_iR_i(x)i=0mciRi(x) 来描述任意多项式。

现在,我们令 Ri(x)=(xi)=xi‾i!R_i(x)=\dbinom{x}{i}=\dfrac{x^{\underline i}}{i!}Ri(x)=(ix)=i!xi,这是符合要求的。

我们就能得到牛顿级数F(x)=∑i=0mF[i](xi)F(x)=\sum\limits_{i=0}^mF[i]\dbinom{x}{i}F(x)=i=0mF[i](ix)

根据递推公式,能得到结论:Δx(xk)=(xk−1)\Delta_x\dbinom{x}{k}=\dbinom{x}{k-1}Δx(kx)=(k1x)

所以ΔnF(x)=∑i=nmF[i](xi−n){\color{GoldenRod}\Delta^nF(x)=\sum\limits_{i=n}^mF[i]\dbinom{x}{i-n}}ΔnF(x)=i=nmF[i](inx)

F(x)=∑i=0(xi)F[i]F(x)=\sum\limits_{i=0}\dbinom{x}{i}F[i]F(x)=i=0(ix)F[i] 使用二项式反演可得:F[x]=∑i=0(xi)(−1)m−iF(i){\color{GoldenRod}F[x]=\sum\limits_{i=0}\dbinom{x}{i}(-1)^{m-i}F(i)}F[x]=i=0(ix)(1)miF(i)
二项式反演是可以NTTNTTNTT卷积加速的,所以我们能在 O(nlog⁡n)O(n\log n)O(nlogn) 内做到 :0⋯m点值⟺牛顿级数0\cdots m点值\Longleftrightarrow牛顿级数0m

生成函数与杨辉三角

  • 将杨辉三角(可以看作二维数组)写成二元生成函数的形式 :
    数组)写成二元生成函数的形式 :
    G[n,m]=(nm)G(x,y)=∑i=0∑j=0(ij)xiyj=∑i=0xi(y+1)i=11−x−xy\begin{aligned} G[n,m]&=\dbinom{n}{m}\\ G(x,y)&=\sum\limits_{i=0}\sum\limits_{j=0}\dbinom{i}{j}x^iy^j\\ &=\sum\limits_{i=0}x^i(y+1)^i\\ &=\dfrac{1}{1-x-xy} \end{aligned}G[n,m]G(x,y)=(mn)=i=0j=0(ji)xiyj=i=0xi(y+1)i=1xxy1
    这个简洁的封闭形式将整个杨辉三角蕴含其中。

  • 如果将 yyy 替换为关于 xxx 的式子,或将 xxx 替换为关于 yyy 的式子,从二元变成一元, xaybx^ay^bxayb 的系数会根据某些条件合并。
    例如,
    y=xky=x^ky=xk,则 [xn]G(x,xk)=[xn]∑i=0∑j=0(ij)xixjk=∑i+j×k=n(ij)[x^n]G(x,x^k)=[x^n]\sum\limits_{i=0}\sum\limits_{j=0}\dbinom{i}{j}x^ix^{jk}=\sum\limits_{i+j\times k=n}\dbinom{i}{j}[xn]G(x,xk)=[xn]i=0j=0(ji)xixjk=i+j×k=n(ji)
    x=ykx=y^kx=yk,则 [xn]G(yk,y)=[xn]∑i=0∑j=0(ij)xikxj=∑i×k+j=n(ij)[x^n]G(y^k,y)=[x^n]\sum\limits_{i=0}\sum\limits_{j=0}\dbinom{i}{j}x^{ik}x^j=\sum\limits_{i\times k+j=n}\dbinom{i}{j}[xn]G(yk,y)=[xn]i=0j=0(ji)xikxj=i×k+j=n(ji)
    这是杨辉三角上某个奇怪方向的求和。同时,考察封闭形式即可得到系数。
    更多的求和 :

  1. ∑i=0m(mi)\sum\limits_{i=0}^m\dbinom{m}{i}i=0m(im)
    即为 ∑i+j×0=m(ij)\sum\limits_{i+j\times 0=m}\dbinom{i}{j}i+j×0=m(ji),所以令 y=x0y=x^0y=x0 得到 G(x,1)=11−2xG(x,1)=\dfrac{1}{1-2x}G(x,1)=12x1。提取系数得 ∑i=0m(mi)=[xm]11−2x=2m\sum\limits_{i=0}^m\dbinom{m}{i}=[x^m]\dfrac{1}{1-2x}=2^mi=0m(im)=[xm]12x1=2m

  2. ∑i=0m(i+m2i)\sum\limits_{i=0}^m\dbinom{i+m}{2i}i=0m(2ii+m)
    注意到 i+m−(2i)/2=mi+m−(2i)/2=mi+m-(2i)/2=mi+m−(2i)/2=mi+m(2i)/2=mi+m(2i)/2=m ,故上式即为 ∑i−j/2=m(ij)\sum\limits_{i-j/2=m}\dbinom{i}{j}ij/2=m(ji) 。令 y=x−1/2y=x^{-1/2}y=x1/2G(x,x−1/2)=11−x−xG(x,x^{-1/2})=\dfrac{1}{1-\sqrt{x}-x}G(x,x1/2)=1xx1,则 ∑i=0m(i+m2i)=[xm]11−x−x=[z2m]11−z−z2=F2m+1\sum\limits_{i=0}^m\dbinom{i+m}{2i}=[x^m]\dfrac{1}{1-\sqrt{x}-x}=[z^{2m}]\dfrac{1}{1-z-z^2}=F_{2m+1}i=0m(2ii+m)=[xm]1xx1=[z2m]1zz21=F2m+1。其中 11−z−z2\frac{1}{1-z-z^2}1zz21 正是斐波那契数列的生成函数除去一个 zzz

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/319863.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

dotnet core高吞吐Http api服务组件FastHttpApi

简介是dotNet core下基于Beetlex实现的一个高度精简化和高吞吐的HTTP API服务开源组件,它并没有完全实现HTTP SERVER的所有功能,而是只实现了在APP和WEB中提供数据服务最常用两个指令GET/SET,满足在应用实现JSON,PROTOBUF和MSGPACK等基于HTTP…

Poj 1284 Primitive Roots

文章目录Description题意&#xff1a;题解&#xff1a;代码&#xff1a;Poj 1284Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 6485 Accepted: 3697Description We say that integer x, 0 < x < p, is a primitive root modulo odd prime p if and onl…

P3507-[POI2010]GRA-The Minima Game【dp,博弈论】

正题 题目链接:https://www.luogu.com.cn/problem/P3507 题目大意 nnn个数&#xff0c;没人轮流取若干个并获得取走的数中最小数的权值&#xff0c;两人的目标都是自己的权值−-−对方的权值最大&#xff0c;求先手的权值−-−后手的权值。 解题思路 肯定是从大往小取&#x…

【LCT】【树状数组】Matches Are Not a Child‘s Play(luogu CF1137F)

正题 luogu CF1137F 题目大意 定义一棵树的产出序列为依次删除权值最小的叶子节点的顺序 进行q此操作&#xff1a; 1.把一个点的权值改为当前树中的最大权值1 2.查询一个点在删除序列中的位置 3.给出两个点&#xff0c;查询哪个在删除序列中的位置更前 解题思路 假设已经求出…

[XSY4220] 九万步(结论)

手动构造发现 x6x6x6 时是可行的 -101234567xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

一起开心2020暑假训练第一周

hdu 1576 A/B oj传送 题解&#xff1a; Poj 1061 青蛙的约会 oj传送 题解&#xff1a; hdu 1525 Euclid‘s Game oj传送 题解&#xff1a; Poj 3070 Fibonacci oj传送 题解&#xff1a; HDU 2504 又见GCD oj传送 题解&#xff1a; Poj 1284 Primitive Roots oj传送 …

ASP.NET Core 中的中间件

前言由于是第一次写博客,如果您看到此文章,希望大家抱着找错误、批判的心态来看。 sky!何为中间件?在 ASP.NET Framework 中应该都知道请求管道。可参考&#xff1a;浅谈 ASP.NET 的内部机制 系列&#xff0c;个人感觉超详细。题外话&#xff1a;说到请求管道&#xff0c;就想…

【bfs】重力球(luogu 7473/NOI Online 2021 普及组 T3)

正题 luogu 7473 题目大意 给出一个正方形区域&#xff0c;中间有一些障碍 现在有两个球&#xff0c;每次操作可以使两个球同时向一个方向移动&#xff0c;直到遇到障碍或边界 现在问你让两个球到同一个位置最少要多少步 解题思路 对于每次操作&#xff0c;球只有可能停在障…

CF700E-Cool Slogans【SAM,线段树合并,dp】

正题 题目链接:https://www.luogu.com.cn/problem/CF700E 题目大意 给出一个字符串SSS&#xff0c;求一个最大的kkk使得存在kkk个字符串其中s1s_1s1​是SSS的子串&#xff0c;si1s_{i1}si1​在sis_isi​中出现了至少222次。 解题思路 首先我们需要有两个结论 si1s_{i1}si1​…

[XXSY] 构树(prufer序列,树上连通块DP)

传送门 CayleyCayleyCayley公式&#xff1a;一个完全图有nn−2n^{n-2}nn−2棵无根生成树&#xff08;可用prufer序列证明&#xff09; 扩展CayleyCayleyCayley公式&#xff1a;被确定边分为大小为a1,a2,⋯,ama_1,a_2,\cdots, a_ma1​,a2​,⋯,am​的连通块&#xff0c;则有nm−…

.NET Core中的性能测试工具BenchmarkDotnet

背景介绍之前一篇博客中&#xff0c;我们讲解.NET Core中的CSV解析库&#xff0c;在文章的最后&#xff0c;作者使用了性能基准测试工具BenchmarkDotNet测试了2个不同CSV解析库的性能&#xff0c;本篇我们来详细介绍一下BenchmarkDotNet。原文链接&#xff1a;https://dotnetco…

序列求和

来源&#xff1a;牛客网 文章目录题目描述题解&#xff1a;代码&#xff1a;时间限制&#xff1a;C/C 1秒&#xff0c;其他语言2秒 空间限制&#xff1a;C/C 131072K&#xff0c;其他语言262144K 64bit IO Format: %lld题目描述 定义S(n) 12 22 … n2&#xff0c;输出S(n) …

【区间DP】摆渡线路(2017 特长生 T4)

题目大意 给出一个园&#xff0c;圆上有100个点&#xff0c;若干条弦&#xff0c;让你选择尽量多互不相交的弦&#xff08;点可以重合&#xff09; 解题思路 可以把圆展开成链&#xff0c;然后复制一遍 设fi,jf_{i,j}fi,j​为第i个位置到第j个位置的所选弦的数量 那么可以枚…

bzoj4589-Hard Nim【FWT】

正题 题目链接:https://darkbzoj.tk/problem/4589 题目大意 求有多少个长度为nnn的数列满足它们都是不大于mmm的质数且异或和为000。 解题思路 两个初始多项式F[0]1F[0]1F[0]1&#xff0c;G[prime≤m]1G[prime\leq m]1G[prime≤m]1&#xff0c;然后答案就是FxorGnF\ xor\ G^…

some useful tricks

异或题思考方向&#xff1a;01trie树&#xff0c;分治 2. 二分图最大匹配&#xff0c;最大独立集互相转换 3. Snow 4. Code 5. Code 6. Code 7. 题目 #include<iostream> #include<cstdio> using namespace std; const int N100010; int n,p,nxt[N],no[200]…

25大技术主题向您发出最后一次约【惠】邀请

一年一度的微软技术盛会即将在上海世博中心拉开大幕金秋十月&#xff0c;来自两岸三地的百名明星讲师将携 25 大技术主题&#xff0c;齐聚上海为您奉献一场无与伦比的技术视听盛宴您&#xff0c;准备好了吗&#xff1f;25大技术主题公开&#xff0c;不负期待姗姗来迟的5系25大技…

P4980-[模板]Pólya定理

正题 题目链接:https://www.luogu.com.cn/problem/P4980 题目大意 nnn个物品图上mmm种颜色&#xff0c;求在可以旋转的情况下本质不同的涂色方案。 解题思路 既然是群论基本题就顺便写一下刚刚了解到的相关知识把&#xff08;顺便消磨一下时间 一个群(G,)(G,\times )(G,)定义…

逆元的求法

逆元&#xff1a; 对于a和p&#xff0c;若 a * inv(a) % p ≡ 1&#xff0c;则称inv(a)为a%p的逆元。其中p为质数 逆元就是在mod下&#xff0c;不能直接除以一个数&#xff0c;而要乘以他的逆元 a * inv(a) 1 (mod p) x / a可以改成 x * inv(a) % p 文章目录方法一.扩展欧几里…

[CF995F] Cowmpany Cowmpensation(树形dp,拉格朗日插值)

树形DP&#xff1a; 设f[u][i]f[u][i]f[u][i]表示给uuu的子树分配工资&#xff0c;uuu点工资为iii的方案数 f[u][i]∏v∈sonu(∑j1if[v][j])f[u][i]\prod\limits_{v\in son_u}(\sum\limits_{j1}^{i}f[v][j])f[u][i]v∈sonu​∏​(j1∑i​f[v][j]) 前缀和优化&#xff1a; 设g[u…

【dfs】益智游戏(2017 特长生 T2)

题目大意 给你四个数字&#xff0c;问你能否经过加减乘除使其结果为24 解题思路 先暴力枚举四个数字的全排列&#xff0c;然后枚举运算符和括号 代码 #include<cstdio> #include<cstring> #include<iostream> #include<algorithm> #define ll long …