nowcoder19153 无限手套

博客介绍了如何利用生成函数和多项式卷积的方法解决NowCoder上的19153题——无限手套。通过求导和同构简化生成函数,最终得出解题公式,并应用广义二项式定理和NTT(快速傅里叶变换)进行多项式卷积求解。
摘要由CSDN通过智能技术生成

链接

点击跳转

题解

先写出每个物品的生成函数:

∑ k = 0 ∞ ( a k 2 + b k + 1 ) x k = a ∑ k = 0 ∞ k 2 x k + b ∑ k = 0 ∞ k x k + ∑ k = 0 ∞ x k \sum_{k=0}^\infin (ak^2+bk+1)x^k \\ = a\sum_{k=0}^\infin k^2x^k + b\sum_{k=0}^\infin k x^k + \sum_{k=0}^\infin x^k k=0(ak2+bk+1)xk=ak=0k2xk+bk=0kxk+k=0xk

∑ k = 0 ∞ x k \sum_{k=0}^\infin x^k k=0xk显然是可以写成 1 1 − x \frac{1}{1-x} 1x1的(这个地方个人理解是:因为 ( 1 − x ) ( 1 + x + x 2 + …   ) (1-x)(1+x+x^2+\dots) (1x)(1+x+x2+)=1,所以在<多项式,多项式卷积>这个代数系统下二者互逆,因此才记作 1 1 − x = 1 + x + x 2 + … \frac{1}{1-x} = 1+x+x^2+\dots 1x1=1+x+x2+)

然后我们进行一些求导乱搞:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值