随笔分类 -  学习笔记

摘要:之前写了一篇关于BSGS的学习笔记。因为太过老旧,就想修改一些错误,顺便添上扩展BSGS的部分。可惜博客园不能对已发布的随笔修改编辑器,索性重新发出来。旧文已删。 阅读全文
posted @ 2020-02-09 16:40 青石巷 阅读(220) 评论(0) 推荐(0)
摘要:作为一个数据结构学傻,终于要开始入这个坑了…… 之前一直不写有关数据结构的东西,是因为不会画那种很高端的图,所以一直不写,现在看来似乎没有办法避免了…… LCA,全称Least Common Ancestor,即最近公共祖先,顾名思义,LCA(u,v)就是u和v的所有共同祖先中深度最小的,很多算法对 阅读全文
posted @ 2017-11-07 14:16 青石巷 阅读(400) 评论(0) 推荐(0)
摘要:定义: 最小瓶颈路问题是指在一张无向图中,询问一个点对$(u,v)$,需要找出从$u$到$v$的一条简单路径,使路径上所有边中最大值最小。 根据查询次数不同,最小瓶颈路问题可分为单次查询和多次查询。 单次查询: 例题:Luogu P1396 营救 题目链接 题解一: 根据“最大值最小”,不难想到二分 阅读全文
posted @ 2017-10-28 23:31 青石巷 阅读(2506) 评论(0) 推荐(2)
摘要:计算机的整数变量是以二进制的形式存储的,两个数的位运算就是直接将两个数的二进制形式中每一位一一对应,根据一定规则进行每一位的运算。事实上,C++中使用的四则运算,本质上还是位运算,只是对其进行封装之后的结果。也正因此,位运算相对于其他运算而言效率很高。本文简要介绍一些通过位运算进行枚举的技巧。 首先 阅读全文
posted @ 2017-10-06 23:02 青石巷 阅读(516) 评论(0) 推荐(0)
摘要:定义: 块状数组是基于分块思想的数据结构,较基于分治思想的数据结构如线段树、平衡树等效率较低,但通用性更强。在块状数组的基础上加以扩展,就可以得到块状链表。 原理: 普通数组在处理一些区间问题时,复杂度通常会退化至O(n)。一个朴素的想法就是将这个数组分为若干个子区间,同时维护这些子区间的统计值,如 阅读全文
posted @ 2017-09-02 19:21 青石巷 阅读(1285) 评论(0) 推荐(0)
摘要:引入: 组合数C(m,n)表示在m个不同的元素中取出n个元素(不要求有序),产生的方案数。定义式:C(m,n)=m!/(n!*(m-n)!)(并不会使用LaTex QAQ)。 根据题目中对组合数的需要,有不同的计算方法。 (1)在模k的意义下求出C(i,j)(1≤j≤i≤n)共n2 (数量级)个组合 阅读全文
posted @ 2017-08-26 11:53 青石巷 阅读(709) 评论(0) 推荐(0)
摘要:本文先介绍一些vector常用的函数(部分借鉴一篇博客中的内容 链接),并以此为铺垫,介绍本人在解题过程中对vector用途的一些总结。 阅读全文
posted @ 2017-08-25 17:17 青石巷 阅读(593) 评论(2) 推荐(0)
摘要:本文对pbds中各种堆的使用方法进行了介绍,并通过一道模板题大致对比了各自的性能。 阅读全文
posted @ 2017-08-25 14:53 青石巷 阅读(8507) 评论(2) 推荐(2)
摘要:定义: 逆元指在某种运算中,对一个数a进行逆运算可以等价为对一个数b进行原运算,此时称a与b互为逆元。 本文中的逆元均指模算术中的乘法逆元,即对于一个数a,如果存在b满足a*b≡1(mod p),则称a与b在模p意义下互为逆元。 由于同余的性质,我们在进行模算术除法时不能简单地除一个数,而应该乘该数 阅读全文
posted @ 2017-08-25 09:24 青石巷 阅读(1189) 评论(0) 推荐(0)
摘要:声明:本文中的变量若非特别说明,均指整数。 定义: 扩展欧几里得算法是用于解决一类形如求解a*x+b*y=c中(x,y),或者形如a*x≡b(mod c)中x的问题。 引理(裴蜀定理): 不定方程a*x+b*y=gcd(a,b)(x,y为变量)一定有无数个解。 证明: 先证明该方程有解。 将欧几里得 阅读全文
posted @ 2017-08-24 21:56 青石巷 阅读(271) 评论(0) 推荐(0)
摘要:定义: 线性筛是在O(nlog(log(n)))的Eratosthenes筛法基础上改进得到的一种算法,可以O(n)求得1~n中的所有素数,因此经常在一些与素数有关的问题中用于预处理。对线性筛进行扩展之后,又可以计算出几乎所有的积性函数。 PS:素数密度据一位老师所说是O(n/ln(n))的。 原理 阅读全文
posted @ 2017-08-24 18:49 青石巷 阅读(610) 评论(0) 推荐(0)