[学习笔记]牛顿迭代
摘要:前置知识:泰勒展开,多项式求逆 作用:解自变量为多项式的函数零点(人话:解方程) 已知 $G(F(x))\equiv0\pmod{x^n}$ 老倍增思路了: $G(F_0(z))\equiv0\pmod{x^{\left\lceil\frac{n}{2}\right\rceil}}$ 将$G(F(x
阅读全文
[学习笔记]多项式对数函数(多项式 ln)
摘要:思路 ln套多项式看成复合函数,(因为ln不好处理)复合函数两边同时求导,可得$\dfrac{A'(x)}{A(x)}$。然后记得积分回来。 前置知识:多项式求逆,多项式求导、积分 ## code: 点击查看代码 #include<bits/stdc++.h> using namespace std
阅读全文
[学习笔记]多项式开根
摘要:## 思路: 推柿子跟求逆一样,分治(倍增)的思想:不想写了 推出$(F-G)^2 \equiv0\pmod{x^n}$ 所以$G=\dfrac{F^2+A}{2F}$ 边界处要用二次剩余的Cipolla算法。 因此只要会多项式求逆、乘法,二次剩余即可。 code #include<bits/std
阅读全文
[学习笔记]多项式求逆
摘要:题意:如其名…… 思路: 多项式的关键在于:用模的次数降次。 它的复杂度跟模数的次幂有关。 所以可以考虑对模数分治。参考 若多项式$F$只有一项,直接求常数项的逆元(这也是判别多想式是否存在逆元的条件)。 设已知 $F(x)H(x)\equiv1\pmod{x^{\left\lceil\frac{n
阅读全文
【学习笔记】多项式复合函数
摘要:## 题意: 给多项式$F(x)$和$G(x)$,求$n$次多项式$H(x)$,满足$H(x)=F(G(x)) (mod\ x^{n+1})$。 luogu传送门 思路: 题意具体可以把多项式$G$当作自变量,每次次幂后,乘$F$的系数。 想要暴力解决问题,试试分块。 令$L= \left\lcei
阅读全文
素数路径(Prime Distance On Tree )
摘要:题意 边长为1,求长度为素数的路径数。 思路 路径计数:点分治+fft 按深度为下标,次数为值卷起来。 结果会吧两端相同的路径算一次,把两端不同的路径算两次。 因此枚举每个点吧对应深度下标减一。 当然这是那种需要容斥的点分治。 code 点击查看代码 #include<bits/stdc++.h>
阅读全文
5651 [51nod1348]乘积之和
摘要:## 题意: 给长度为$n$的数列$a_i$,$q$个询问每次给$k$,问不同方案$k$个数乘起来乘积的和。(mod=1e5+4) ## 思路: 从乘起来的和切入容易想到ntt吧。问题是怎么卷。 ntt,ftt只能解决两个多项式相卷的问题。 因此用分治(二分),可解决问题。 分治是递归的,会存在状态
阅读全文
九连环
摘要:题面 即求$\left\lfloor\frac{2^{i+1}}{3}\right\rfloor$ 具体证明可以康luogu题解区。 发现需要高精度,而且不能暴力$n2$高精度。因为二进制位数是$105$级别,所以十进制至少是$10^4$级别。 fft当然可以的,多项式除3也不是很难想。 这里学的是
阅读全文
[LNOI2022] 题
摘要:题意: 建议看原题面,抽象文字会严谨很多。 给长为$3*n$的字符串s,每个位置值为$[0,3]$,如果为$0$的话,你构造字符串$t$,即把$0$替换为$[1,3]$。如果$t$中每三个配对(前提是为排列,且按编号从前往后的逆序对奇数),问配出的$n$对的方案数,方案不同当且仅当$t$不同或者任意
阅读全文