利用网络流通过拆点判断图的路径存在性问题:abc318_g
利用网络流通过拆点判断图的路径存在性问题:abc318_g 本文搬运自本人高中时期CSDN博客,若图片加载不出来,可到原文查看:https://blog.csdn.net/zhangtingxiqwq/article/details/132644032 https://atcoder.jp/contests/abc318/tasks/abc318_g 对于图上一类路径是否存在问题,可以考虑网络流。 Trick1 路径存在转网络流 题目转化为: 找出两条不交路径 B->A, B->C 对于已经找到的路径,我们 不能再走 。对于当前我们找到的某条路径,我们可能进行 反悔 ...
善用值域数据结构+操作离线:1864F
善用值域数据结构+操作离线:1864F 本文搬运自本人高中时期CSDN博客,若图片加载不出来,可到原文查看:https://blog.csdn.net/zhangtingxiqwq/article/details/132631673 发现题目中有两个维度: 维护数值,发布计算某种情况下的答案 多个查询 两个维度,发现很难分开做。考虑对操作离线,同时维护两个维度的东西。 类似线段操作,左边入时±,右边出时-+ 本质是一种扫描线的思想
多项式求逆
多项式求逆 本文搬运自本人高中时期CSDN博客,若图片加载不出来,可到原文查看:https://blog.csdn.net/zhangtingxiqwq/article/details/132612478 已知 FFF ,求 GGG 考虑倍增 F(x)∗H(x)≡1(modxn/2)F(x) * H(x) \equiv 1 \pmod{x^{n/2}}F(x)∗H(x)≡1(modxn/2) F(x)∗G(x)≡1(modxn/2)F(x) * G(x) \equiv 1 \pmod{x^{n/2}}F(x)∗G(x)≡1(modxn/2) 假设 HHH 已知,求G 做差可得: H...
NTT总结
NTT总结 本文搬运自本人高中时期CSDN博客,若图片加载不出来,可到原文查看:https://blog.csdn.net/zhangtingxiqwq/article/details/132591415 https://www.luogu.com.cn/problem/P3803 公式: ωn1≡gp−1n(modp)\large\omega_n^1\equiv g^{\frac {p-1}n}\pmod p ωn1≡gnp−1(modp) 然后所有单位根运算都可以转成原根了!(前提 ppp 为质数) ppp 常为 998244353,它的原根 ggg 为 3 实现细节: ...
多项式乘法(FFT)
多项式乘法(FFT) 本文搬运自本人高中时期CSDN博客,若图片加载不出来,可到原文查看:https://blog.csdn.net/zhangtingxiqwq/article/details/132588646 https://www.luogu.com.cn/problem/P3803 傅里叶变换(FFT)笔记存档 FFT代码上的实现细节 主函数 把长度设为2的整数次幂块 初始进行翻转(二进制翻转) 对A,B先化为点值(DFT) 相乘 IDFT FFT函数 进行初始翻转: 枚举区间长度,并计算单位根 逐个枚举区间(哪...
FFT代码上的实现细节
FFT代码上的实现细节 本文搬运自本人高中时期CSDN博客,若图片加载不出来,可到原文查看:https://blog.csdn.net/zhangtingxiqwq/article/details/132584208 ω\omegaω 的计算 ωn1\omega_n^1ωn1 的计算 考虑单位圆, ωn1\omega_n^1ωn1 为: 也就是: 注:op为判断当前为dft还是idft ωni\omega_n^iωni 的计算 当要计算 ωni\omega_n^iωni 时,只需要在 ωni−1\omega_n^{i-1}ωni−1 基础上乘 ωn1\omega_n^1...
傅里叶变换(FFT)笔记存档
傅里叶变换(FFT)笔记存档 本文搬运自本人高中时期CSDN博客,若图片加载不出来,可到原文查看:https://blog.csdn.net/zhangtingxiqwq/article/details/132582930 参考博客: https://www.luogu.com.cn/blog/command-block/fft-xue-xi-bi-ji 目录: FFT引入 复数相关知识 单位根及其相关性质 DFT过程(难点) DFT结论(重要) IDFT结论(重要) IDFT结论证明(难点) FFT引入 复数相关知识 单位根及其相关性质 DF...
DP答案和状态互换 || 多询问类DP转倍增/二分优化:CF1175E
dp答案和状态互换 || 多询问类dp转倍增/二分优化:CF1175E 本文搬运自本人高中时期CSDN博客,若图片加载不出来,可到原文查看:https://blog.csdn.net/zhangtingxiqwq/article/details/132571504 https://www.luogu.com.cn/problem/CF1175E Trick 1 按照正常套路 dpidp_idpi 为到达 iii (限制)最少多少条(答案),其实可以转化为 dpidp_idpi 用 iii 条(限制)最远可以到达哪里(答案) 对于难以解决的dp,可以尝试把状态和答案互换,观察是否...
动态维护直径 || 动态维护树上路径 || 涉及LCA点转序列 || 对欧拉环游序用数据结构维护:1192B
动态维护直径 || 动态维护树上路径 || 涉及LCA点转序列 || 对欧拉环游序用数据结构维护:1192B 本文搬运自本人高中时期CSDN博客,若图片加载不出来,可到原文查看:https://blog.csdn.net/zhangtingxiqwq/article/details/132566345 https://www.luogu.com.cn/problem/CF1192B 对于直径的求法,常用dp或两次dfs,但如果要动态维护似乎都不太方面,那么可以维护树上路径最大值。 树上路径为: depu+depv−2×deplca(u,v)dep_u+dep_v-2\times de...
后缀自动机SAM
后缀自动机SAM 本文搬运自本人高中时期CSDN博客,若图片加载不出来,可到原文查看:https://blog.csdn.net/zhangtingxiqwq/article/details/132560666 https://www.luogu.com.cn/problem/P3804 fail:当前区间-1(最短串 去掉最前面 的字符) nxt:任意串 加上最后面 考虑新加入的字符为x,上一个为p,则 nxt[p][x]=cnxt[p][x]=cnxt[p][x]=c 当前的每个后缀如果本身nxt为空,都可以加x 代码: 然后考虑现在这样: 如果整个区间可以直接...













