摘要: 求区间最小值之和 动态规划+单调栈 我们定义 \(f_i\) 为所有以 \(i\) 为右端点的区间的最小值之和,用单调栈的方法来寻找左边最远的距离,使得区间内 \(A_i\) 是最小值。假设用单调栈找到了左边第一个比 \(A_i\) 小的数是 \(A_j\) ,那么 \(f_i\) 就可以加上 \( 阅读全文
posted @ 2023-03-27 11:28 kroyosh 阅读(49) 评论(0) 推荐(0)
摘要: # 马拉车(manacher)算法 马拉车算法是用来 查找一个字符串的最长回文子串的线性方法 code ``` const int N = 2e5 + 10; int n; char a[N], s[N]; int p[N]; void init() { int k = 0; s[k ++ ] = 阅读全文
posted @ 2023-03-24 10:32 kroyosh 阅读(35) 评论(0) 推荐(0)
该文被密码保护。 阅读全文
posted @ 2023-02-20 16:56 kroyosh 阅读(15) 评论(0) 推荐(0)
摘要: 【模板】普通平衡树 FHQ treap code const int N = 1e5 + 10; int n; int root, idx; struct FHQ { int l, r, siz, key, val; }tr[N]; int nwid(int x) { idx ++ ; tr[idx 阅读全文
posted @ 2022-12-09 09:49 kroyosh 阅读(38) 评论(0) 推荐(0)
摘要: # 最短路 ## floyd 适用于任何图,不管有向无向,边权正负,但是最短路必须存在。(不能有负环) code $(n^3)$ ``` 初始化: for (int i = 1; i ## spfa(队列优化的Bellman-Ford算法) 可以求出有负权的图的最短路,并可以对最短路不存在的情况进行 阅读全文
posted @ 2022-09-24 11:01 kroyosh 阅读(47) 评论(0) 推荐(0)
摘要: 生成函数(母函数) 定义 生成函数(Generating Function)又称母函数,是处理组合数学问题的一大利器。 它是一种形式幂级数,其每一项的系数可以提供关于这个序列的信息。 生成函数有许多不同的种类,但大多可以表示为单一的形式:$$F(x)=\sum_{n}a_nk_n(x)$$ 其中 $ 阅读全文
posted @ 2022-08-31 16:14 kroyosh 阅读(185) 评论(0) 推荐(0)
摘要: # 莫比乌斯反演 #####[一篇莫反入门不错的文章](https://www.luogu.com.cn/blog/An-Amazing-Blog/mu-bi-wu-si-fan-yan-ji-ge-ji-miao-di-dong-xi) ## 莫比乌斯函数 ### 定义 将 $n$ 质因数分解 $ 阅读全文
posted @ 2022-08-25 10:55 kroyosh 阅读(35) 评论(0) 推荐(0)
摘要: 求解如下形式的一元线性同余方程组(其中 $n_1, n_2, ···, n_k$ 不 两两互质) $$ \left{ \begin{matrix} x & \equiv & a_1 & (mod \ n_1)\ x & \equiv & a_2 & (mod \ n_2)\ \vdots\ x & 阅读全文
posted @ 2022-08-22 07:32 kroyosh 阅读(59) 评论(0) 推荐(0)
摘要: 状压DP 集合枚举 $O(3^n)$ $S$ 是一个二进制数,表示一个集合,$S0$ 表示 $S$ 的子集。 code //包括S本身 for (int S = 1; S < (1 << n); S ++ ) for (int S0 = S; S0; S0 = (S0 - 1) & S) //不包括 阅读全文
posted @ 2022-08-04 11:01 kroyosh 阅读(36) 评论(0) 推荐(0)
摘要: 最大公约数 欧几里得算法求gcd \(设 a > b, 且a = b × q + r,r < b\) \(则\textit{gcd(a, b) = gcd(b, a % b)}\) code int gcd(int a, int b) { return !b ? a : gcd(b, a % b); 阅读全文
posted @ 2022-08-02 18:14 kroyosh 阅读(44) 评论(0) 推荐(0)
摘要: 网络流 最大流 基本概念 流网络 不考虑反向边 可行流 不考虑反向边 (1)两个条件:容量限制、流量守恒 (2)可行流的流量指从源点流出的流量 - 流入源点的流量 (3)最大流是指最大可行流 残留网络 考虑反向边,残留网络的可行流f' + 原图的可行流f = 原题的另一个可行流 (1) $|f' + 阅读全文
posted @ 2022-07-21 22:03 kroyosh 阅读(66) 评论(0) 推荐(0)