会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
蒟蒻zhang+的代码仓库
存一些奇怪代码的地方
博客园
首页
新随笔
联系
订阅
管理
[置顶]
字符串数据结构模板
摘要: Trie 树 字典树,用于存储和查询数量较大的字符串。 例题:洛谷P2580 KMP算法 支持单个模式串匹配。 思想:用自己匹配自己。核心是next数组。 例题:洛谷P3375 AC自动机 支持多模式串匹配。 思想:Trie树+KMP算法;也可以看做模式串有多个的KMP算法在Trie树上的实现。 M
阅读全文
posted @ 2017-05-04 15:17 3918张佳
阅读(225)
评论(0)
推荐(0)
2017年8月5日
白书的一些奇怪模板
摘要: 1 void qsort(int l, int r) { 2 int i, j, mid, p; 3 i=l; j=r; 4 mid=a[(l+r)/2]; 5 do { 6 while (a[i]<mid) i++; 7 while (a[j]>mid) j--; 8 if (i<=j) { 9
阅读全文
posted @ 2017-08-05 09:17 3918张佳
阅读(105)
评论(0)
推荐(0)
2017年8月4日
高精度模板
摘要: #include <iostream> #include <cstdio> #include <cstring> #include <string> using namespace std; string a1, b1; int a[510], b[510], c[510]; int lena, l
阅读全文
posted @ 2017-08-04 15:12 3918张佳
阅读(110)
评论(0)
推荐(0)
2017年6月29日
大整数类模板
摘要: #include #include #include #include using namespace std; struct BigInteger { static const int BASE=100000000; static const int WIDTH=8; vector s; BigInteger(long long num=0)...
阅读全文
posted @ 2017-06-29 20:33 3918张佳
阅读(212)
评论(0)
推荐(0)
2017年6月18日
线段树模板1
摘要: 已知一个数列,你需要进行下面两种操作: 1.将某区间每一个数加上x 2.求出某区间每一个数的和 即支持区间修改(区间加)和区间查询。 (这里的修改顺序对结果无影响) 代码如下: 题目见洛谷P3372 (貌似也可以用分块和树状数组水过的样子,虽然我暂时并不知道树状数组是怎么做到的(嗯,以后一定会学的)
阅读全文
posted @ 2017-06-18 11:45 3918张佳
阅读(145)
评论(0)
推荐(0)
2017年6月12日
后缀数组
摘要: 利用倍增的思想,在O(N log N)的时间内构造出来。 这里不提供思路,只提供代码的讲解。 讲解在代码的注释里。 (无注释版) #include <iostream> #include <cstdio> #include <cstring> #include <cmath> using names
阅读全文
posted @ 2017-06-12 07:30 3918张佳
阅读(153)
评论(0)
推荐(0)
2017年6月2日
求逆序对模板
摘要: 方法一:离散化+树状数组 模板如下: #include<iostream> #include<cstdio> #include <algorithm> using namespace std; const int MAXN=40001; int n, a[MAXN], tree[MAXN], tot
阅读全文
posted @ 2017-06-02 09:48 3918张佳
阅读(229)
评论(0)
推荐(0)
2017年5月7日
最小生成树模板
摘要: 两种方法:prim:和克鲁斯卡尔,推荐后者。 prim: (其实和Dijkstra是一个东西,只有几处代码不同) 克鲁斯卡尔: 用了并查集的思想,比较推荐 未完成的Prim堆优化 #include <iostream> #include <cstdio> #include <queue> #defi
阅读全文
posted @ 2017-05-07 10:09 3918张佳
阅读(136)
评论(0)
推荐(0)
2017年5月6日
并查集模板
摘要: 路径压缩+按秩合并 例题 洛谷T3766 //find与fa引发的血案 题目描述 有一个 M 行 N 列的点阵,相邻两点可以相连。一条纵向的连线花费一个单位,一条横向的连线花费两个单位。某些点之间已经有连线了,试问至少还需要花费多少个单位才能使所有的点全部连通。 输入输出格式 输入格式: 第一行输入
阅读全文
posted @ 2017-05-06 11:47 3918张佳
阅读(210)
评论(0)
推荐(0)
公告