随笔分类 - template
算法模板
摘要:目录多次路径信息查询杂项技巧树上倍增dfn 序树的直径Kruskal 重构树重链剖分、树上启发式合并、全局平衡二叉树三者的联系树上启发式合并全局平衡二叉树三者的对比点分治、边分治、点分树、边分树点分治点分树边分治边分树使用差分模拟 LCA 信息长链剖分基本概念邻域树分块 尝试总结一下树上数据结构的技
阅读全文
摘要:【模板】多项式乘法(单模数 dit-dif 优化)& 差卷积 需要支持多模数的就是 github 上那一个 template-poly,那个还额外加了一些判断合法性的东西。单模数而且不要求很精细的就这个。 差卷积: 是一个很常用的一个卷积形式,
阅读全文
摘要:https://peehs-moorhsum.blog.uoj.ac/blog/7891 题目描述 对一棵树求 hash 值,以判断两棵树是否同构。有有根树和无根树两个版本。 solution 找一个随机函数 (可以选 xor-shift),然后每个点的子树的哈希值如下计算: \[h_u=
阅读全文
摘要:目录题目描述朴素算法矩阵刻画实现code 以洛谷模板题为例介绍动态 dp 的一般方法。 P4719 【模板】"动态 DP"&动态树分治 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) P4751 【模板】"动态DP"&动态树分治(加强版) - 洛谷 | 计算机科学教育新生态 (lu
阅读全文
摘要:also known as "baka's trick" 目录版本一版本二 版本一 定义一个问题可以双指针,即要找出所有 的区间, 满足 且若 则 \(f(l_0, r_0)=1\ (l
阅读全文
摘要:使用条件: 求积性函数单点前缀和。 若 为质数,则 是低次多项式(或者可以拆成常数个完全积性函数,同时它们的前缀和都可以计算) 若 为质数,则要求 能在比较低的时间计算。 (?) 算法流程建议直接看 O
阅读全文
摘要:【OI-wiki #5759】refactor(misc/odt.md): 重写珂朵莉树页面 简介 珂朵莉树(Chtholly Tree),又名老司机树 ODT(Old Driver Tree)。起源自 CF896C。 这个名称指代的是一种「使用平衡树(std::set、std::map 等)或链表
阅读全文
摘要:原“行列式”部分 merged into https://www.cnblogs.com/caijianhong/p/18322302 定义 欧拉回路:是图上的一条路径,满足每条边恰好在路径上出现一次(重边算不同的边)。还要满足路径的起点等于终点。 欧拉路径:是图上的一条路径,满足每条边恰好在路径上
阅读全文
摘要:有一种考前背书的美(NOI2024 Edition) 有一些太熟悉的例如线段树、树状数组、NTT、FWT 感觉就不写了。注意,要看的是不熟悉的! 目录有一种考前背书的美(NOI2024 Edition)Linux 相关.gdbinit.vimrc.bashrcbackup.shdp.shmakefi
阅读全文
摘要:#include <bits/stdc++.h> using namespace std; #ifdef LOCAL #define debug(...) fprintf(stderr, __VA_ARGS__) #else #define endl "\n" #define debug(...)
阅读全文
摘要:参见洛谷模板题题解,这里只有代码实现。 文末有一组测试数据。 注意要特判 ,不知道为什么。 Miller Rabin 取前 12 个质数。 1 #include <bits/stdc++.h> using namespace std; #ifdef LOCAL #define debu
阅读全文
摘要:貌似这个还不是 MTT
阅读全文
摘要:代码实现在最底下。 【模板】多项式初等函数 同时作为 https://github.com/caijianhong/template-poly 的 document。 杂项 数域为 ,所以定义了 mint 为 modint<998244353>。 p
阅读全文
摘要:WBLT,also known as "Weight Balanced Leafy Tree",是一种平衡树,满足每个节点**要么是叶子,要么有两个儿子**;在此基础上,WBLT 是加权平衡的,深度是**严格** 。WBLT 支持 的插入、删除, 查询排名、第 小、前驱、后继等信息,以及 分裂, 合并。本文通过对若干资料的抄写,引入了可持久化的 WBLT。
阅读全文