随笔分类 - OI Study
摘要:因为在某场比赛上没学过子序列自动机而被搞了心态,听说是最简单的一种自动机,就赶紧来点亮技能树( 简介 子序列自动机,好像也称序列自动机,是一种可以快速判断字符串 是否是字符串 子串的算法。 这是一个很朴素的算法,本质上就是利用空间来换取时间。 实现 1. 原理 假设现有一字符
阅读全文
摘要:树形 问题 最小点覆盖 问题: 给定一颗有 个点的有根树,从这 个点中选出尽量少的点,使得所有边都与取出来的点相连。 分析: 考虑一条边,它两端的节点必定有一个在所选点集中,可以考虑 : 设 表示以 为根的子树中
阅读全文
摘要:线性基 将数插入线性基数组 void Ins(int x) { for(int i=62;i>=0;i--) if(x&(1LL<<i)) { if(!p[i]) {p[i]=x;break;} else x^=p[i]; } } 查询一个元素是否能被异或出来 bool Check(int x) {
阅读全文
摘要:莫队 (离线算法) 普通莫队 问题:给出一个序列和若干查询 ,问 中有多少个不同的数。 排序方式 对于区间 , 以 所在块的编号为第一关键字, 为第二关键字从小到大排序 bool cm
阅读全文
摘要:模拟退火 P2503 [HAOI2006]均分数据 P1337 [JSOI2004] 平衡点 / 吊打XXX P4035 [JSOI2008]球形空间产生器 P2210 Haywire P3878 [TJOI2010]分金币 P2538 [SCOI2008]城堡 const double delta
阅读全文
摘要:其实是复习笔记( 【模板】普通平衡树 简介 是平衡树的一种,主要沿袭了 的思路,与其他平衡树不同的是它并非进行旋转操作来维护树的平衡,而是进行分裂和合并的操作,因此又称非旋 。 优点:码量少,易理解,灵活 缺点:常数略大 实现 先说
阅读全文
摘要:这几天终于认真搞懂了线段树,就赶紧生产了篇学习笔记来热热知识。(我真的好菜啊) 线段树呢,是一种很有用的数据结构(点头),对于一些区间查询、修改都能方便实现,还有好多好多的奇异功能(哇),也是学习一些高级du liu数据结构的基础,对于一名OIer还是 有认真学习的必要的。 线段树是一种二叉搜索树,
阅读全文