模板库
文章平均质量分 59
Steaunk
Remember to look up at the stars and not down at your feet. Be curious and however difficult life may seem, there is always something you can do and succeed at. - SH
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
ZKW费用流模板
以 LOJ 102 为例 #include <cstdio> #include <cstring> #define Min(_A, _B) (_A < _B ? _A : _B) #define R register int F() { R int x; R char ch; while(ch = getchar(), ch < '0' |...原创 2018-04-02 09:18:20 · 333 阅读 · 0 评论 -
SAM模板
以 luogu P3804 为例感觉我对 SAM 理解的不是很透彻。#include <cstdio> #include <cstring> #define R register #define Null b #define Max(_A, _B) (_A > _B ? _A : _B) char s[1000010]; struct Data { int len, size, In;原创 2018-03-02 22:20:30 · 631 阅读 · 0 评论 -
LCT模板
以【清华集训2016】温暖会指引我们前行 为例 UOJ 274原创 2017-12-20 21:43:38 · 439 阅读 · 0 评论 -
FWT模板(loading)
ci=∑j⊗k=iajbk=∑0≤k<2n∑0≤j<2n[j⊗k=i]ajbkci=∑j⊗k=iajbk=∑0≤k<2n∑0≤j<2n[j⊗k=i]ajbkc_i = \sum_{j \otimes k = i} a_j b_k= \sum_{0 \le k < 2^n} \sum_{0\le j < 2^n} [j \otimes k = i] a_j b_k  ...原创 2017-12-14 16:59:19 · 438 阅读 · 0 评论 -
FFT模板
《算法导论》上写的是真不错。 FFT递归版,常数有点大呀。 #include <cstdio> #include <cmath> #include <cstring> #define R register #define db long double #define ll long long const int Length = 1 << 1...原创 2017-12-16 15:41:19 · 341 阅读 · 0 评论 -
Trie图
Trie图是AC自动机的优化。 以 luogu P3808 为例原创 2017-11-27 13:15:06 · 363 阅读 · 0 评论 -
后缀排序
以 luogu P3809 为例 #include #include #define R register const int MaxN = 1000010; int SA[MaxN], Rank[MaxN], Height[MaxN], x[MaxN], sum[MaxN], y[MaxN]; char s[MaxN]; bool cmp(R int i, R int j, R int k原创 2017-11-28 09:36:22 · 991 阅读 · 0 评论 -
可并堆模板
可并堆模板luogu P3377 示范斜堆#include <cstdio> #include <cstring> #define R register #define Null b struct Data { int key; Data *lson, *rson; } b[100010], *root[100010]; int tot; int Pre[100010]; bool原创 2017-11-25 16:08:34 · 492 阅读 · 0 评论 -
李超线段树
要求在平面直角坐标系下维护两个操作: 1. 在平面上加入一条线段。记第i条被插入的线段的标号为i。 2. 给定一个数k,询问与直线 x = k相交的线段中,交点最靠上的线段的编号。 3. 强制在线。原创 2017-11-20 21:19:50 · 535 阅读 · 0 评论 -
平衡树模板
Splay 仅支持构造、插入、查找、翻转。 #include #include #define R register #define Null b int n, m; struct Data { int Key, Sum; bool rev; Data *Pre, *Son[2]; } b[100010], *root = b; int tot; struct Splay_Tree {原创 2017-11-18 16:06:25 · 451 阅读 · 0 评论 -
K-D Tree 模板
#include &lt;bits/stdc++.h&gt; #define Min(_A, _B) (_A &lt; _B ? _A : _B) #define Max(_A, _B) (_A &gt; _B ? _A : _B) #define Abs(_A) (_A &gt; 0 ? _A : -(_A)) struct pair{ int x, y; } a[500010]; stru...原创 2018-06-21 11:31:41 · 379 阅读 · 0 评论
分享