随笔分类 - 多项式
摘要:仔细观察样例解释,发现 $F(n)=2F(n-1)+[n \%2]$. 然后我们就可以推出来前 10 项左右的 $F(n)$ 的值,然后打表找规律发现 $F(n)=\frac{2^{n+1}}{3}$ (向下取整) 由于没有模数,所以需要手写一个 $FFT$ 维护高精度乘法的板子. code: #i
阅读全文
摘要:比较综合的多项式题 code: #include <cmath> #include <cstring> #include <algorithm> #include <cstdio> #include <string> #define ll long long #define ull unsigned
阅读全文
摘要:$B(x)=A^k(x)$ $\Rightarrow \ln B(x)=\ln A^k(x)$ $\Rightarrow \ln B(x)=k \ln A(x)$ $\Rightarrow B(x)=\exp(k \ln A(x))$ code: #include <cmath> #include
阅读全文
摘要:十分轻松的生成函数题. code: #include <cmath> #include <cstring> #include <algorithm> #include <cstdio> #include <string> #define ll long long #define ull unsign
阅读全文
摘要:挺好的一道数数题. code: #include <cmath> #include <cstring> #include <algorithm> #include <cstdio> #include <string> #define ll long long #define ull unsigned
阅读全文
摘要:看了标签:贝尔数? 这不就是指数型生成函数模板吗..... 考虑有指数型生成函数 $F(x)$,将 $F(x)$ 分散成若干个集合的生成函数就是 $G(x)=e^{F(x)}$,来一个多项式 exp 即可. code: #include <cmath> #include <cstring> #inc
阅读全文
摘要:好神仙的多项式啊! 需要用到:prufer序列,生成函数,多项式求逆,多项式取 ln,多项式 exp..... code: #include <cmath> #include <cstring> #include <algorithm> #include <cstdio> #include <str
阅读全文
摘要:十分有趣的多项式推式子题,多多积累. code: #include <cmath> #include <cstring> #include <algorithm> #include <cstdio> #include <string> #define ll long long #define ull
阅读全文
摘要:标签:生成函数,多项式exp 有 $n$ 个点,每个点有一个度数 $v[i]$,代表如果选择这个点就必须满足这个点与 $v[i]$ 条边相连. 求:有多少种选法,使得所选集合中的点能构成一棵树. 如果 $m$ 个点能生成一颗树,那么一定满足 $\sum v_{i}=2\times (m-1)$ 这是
阅读全文
摘要:标签:指数型生成函数,多项式求逆 感觉这个生成函数还是蛮有难度的. 每一层的指数型数的生成函数 $F(x)=\sum_{i=1}^{\infty} \frac{1}{i!}x^i$ 那么所有层的生成函数就是 $G(x)=\sum_{i=1}^{\infty} F^i(x)$ 我们注意到因为这道题划分
阅读全文
摘要:标签:生成函数,多项式 exp 题意:一共有 $n$ 个物品,每件物品体积为 $v_{i}$,数量为 $10^5$,求:装满一个容量为 $m$ 的背包有多少种不同方案. 比较友好的生成函数,并不是很难推导(似乎有些套路QAQ) 对于每一件物品列生成函数 $F_{i}(x)=\sum_{i=0}^{\
阅读全文
摘要:直接粘贴一个多项式全家桶吧. 公式: 求多项式 $F(x)=e^{A(x)}(\mod x^n)$ 设 $F_{0}(x)=e^{A(x)} (\mod x^\frac{n}{2})$ 则有 $F(x)=F_{0}(x)(1-\ln F_{0}(x)+A(x))(\mod x^n)$ code: #
阅读全文
摘要:题意:有红球,蓝球,绿球,黄球,其中红球和绿球都只能选择偶数个,求选择 $n$ 个球摆成一排有多少种方案数. 我们构造关于这些球的指数型生成函数 $F(x)=\sum_{i=0}^{\infty} \frac{a_{i}}{i!}x^i$ 其中 $a_{i}$ 表示选择 $i$ 个球的不同排列数.
阅读全文
摘要:求:$n$ 个点的二叉树叶子个数期望. 设 $f_{n}$ 表示 $n$ 个点所有不同的二叉树叶子总个数,$g_{n}$ 表示 $n$ 个点不同的二叉树个数. 则有 $ans=\frac{f_{n}}{g_{n}}$ 有 $g_{n}=\sum_{i=0}^{n-1}g_{i}g_{n-i-1}$
阅读全文
摘要:朴素的DP:$f[i][j]$ 表示选了 $i$ 个数,异或值为 $j$ 的方案数. 转移:$f[i][j]=\sum_{i=1}^{m}f[i-1][k]\times isprime[p]$($p$ 异或 $k$ 等于 $j$) 如果 $n$ 比较小的话可以直接进行 FWT 优化 DP. 然而,这
阅读全文
摘要:有一个 $n$ 行 $m$ 列的表格,每个元素都是 0/1,每次操作可以选择一行或一列,将 0/1 翻转,即 0 换为 1,1 换为 0. 求:经过若干次操作后,表格中最多有多少个 1. 数据范围:$1\leqslant n \leqslant 20,1\leqslant m \leqslant 1
阅读全文
摘要:令 $f[x][j]$ 表示以 $x$ 为根的子树,选出连通块的异或值为 $j$ 的方案数. 然后有 $f[x][j]=f[x][j]+\sum_{i\oplus k=j} f[x][i] \times f[son][k]$. 其中,$\oplus$ 为异或符号. 求解这个东西显然可以用 $FWT$
阅读全文
摘要:直接给出公式好了: 或卷积: $FWT[A]=merge(FWT[A0],FWT[A0]+FWT[A1])$ $UFWT[A']=merge(UFWT[A0'],UFWT[A1']-UFWT[A0'])$ 与卷积: $FWT[A]=merge(FWT[A0]+FWT[A1],FWT[A1])$ $U
阅读全文
摘要:根据期望的线性性,我们算出每个点期望被计算次数,然后进行累加. 考虑点 $x$ 对点 $y$ 产生了贡献,那么说明 $(x,y)$ 之间的点中 $x$ 是第一个被删除的. 这个期望就是 $\frac{1}{dis(x,y)+1}$,所以我们只需求 $\sum_{i=1}^{n}\sum_{j=1}^
阅读全文
摘要:多项式乘法 多项式求逆 多项式除法/取模 多项式求导/积分 多项式取 ln 多项式 exp 多项式快速幂 多项式多点求值 多项式快速插值 code: #include <cmath> #include <cstring> #include <algorithm> #include <cstdio>
阅读全文

浙公网安备 33010602011771号