随笔分类 - 可能有用科技
摘要:前言 研究一下堆。 什么是堆 堆是一种点带权的树,每个节点的权都小于/大于其父亲节点的权。 以下为了方便就只说小根堆了。 堆通常需要支持以下几种功能 : 插入(insert) 查询最小值(min) 删除最小值 (extracy min) 合并(merge) 减小一个元素的值(decrease key
阅读全文
摘要:收录一下我这个烂人的摆烂记录。 最小直径生成树 OI-wiki部分内容有误,待勘误,文末给出论文链接,前面有些部分有点价值。 子序列自动机 非常容易理解的啥也不是的自动机。 多项式任意次幂&任意次根 大常数且没用。 后缀树 介绍很不全面,因为感觉这玩意比 SAM 麻烦就彻底没心思写下去了。 线性递推
阅读全文
摘要:前言 我不会卡常。 我也不会底层优化,这个博客就当个乐子吧。 GCC官方文档 内建函数 编译器 内置的函数,使用会导致减少兼容性和可移植性,于是不适合程序开发,但是 Linux 内核用到了内建函数。 不过 NOI 系列赛事用的编译器都一样,就可以放心用了。 内建函数功能很多,包括访问一些底层信息,这
阅读全文
摘要:前言 应该没有毒瘤出题人会去卡 和 吧。 最大流 首先明确我们要干什么 —— 求最大流。 然后用那个最常见的比喻 : 源点是自来水厂向外输水,源点输出的所有水都需要汇入污水处理厂,但是水管是有流量上限的。 那么有一个非常 \(
阅读全文
摘要:前言 参考 : 2021 年信息学奥林匹克中国国家集训队论文 代晨昕 后缀树的构建 似乎后缀树可以在一些题目代替 SAM 套 LCT 啊. 妈妈再也不怕我考场写不出LCT了 后缀树也写不出啊. 反正能写进国集论文的东西一定不会差(?) 从前向后构建后缀树的在线算法 Ukkonen 算法可视化 约定
阅读全文
摘要:前言 不会线性代数。 在某次模拟结束后看题解,“用BM算法求出递推式即可” 这句风轻云淡的话极大伤害了我这个数学弱菜。 但是起码当时我还是知道这里的 BM 说的一定不是 Boyer-Moore 字符串匹配,不过光凭BM算法这个关键字似乎只能搜到 Boyer-Moore,而加上递推之类的关键字才可以搜
阅读全文
摘要:前言 我可能是有点大病才来学这种东西. 本来想去写计算几何和LCT,但是我太菜了学不会于是去写了一个广义 SAM 板子 甚至还 WA 了四次. 遂来学怪东西. update from 学到一半: 我超fxj开卷多项式牛顿迭代了,好强! 子序列自动机 神 \(\mathrm{{\color{balck
阅读全文
摘要:前言 NOI2021 都考了 LGV 引理,那以后难道没有那么一点(?)可能考最小直径生成树呢? 树直径与最小直径生成树 直径是图中所有最短路径的最大值. 最小直径生成树问题 : 给定一个 个点 条边的无向连通图,边有边权. 求一个生成树使得树的直径最小. 首先引入 图的绝对
阅读全文
摘要:前言 重写旧文 & 增加新内容。 欧几里得算法 $$\large \gcd(a,a) = a\ \gcd(a,b) = \gcd(b,a \bmod b) \[ ```cpp int gcd(int a,int b) { return b ? gcd(b,a % b) : a; } ``` 非递归
阅读全文
