摘要: 用途: 用于二维坐标系维护多条线段。 算法: 本质上是采用标记永久化, 对每个线段树节点维护一个标记表示该区间存在这一条线段, 查询时从上到下经过节点的标记即为该横坐标上可能经过的线段。 下面需在标记(线段)间的比较上作考虑:建议画图理解 此时对于一个区间\([l, r]\), 找出中点\(mid\ 阅读全文
posted @ 2024-08-14 15:48 Ian8877 阅读(2) 评论(0) 推荐(0) 编辑
摘要: 概念 hash,也称散列,可以理解为一种思想:将复杂数据转换为一个标志,映射入简单值域中,用来方便存储与查询。 其实就像离散化可以将数字与其的大小顺序一一对应那样,不过离散化是提前预处理,先把所有目标数据获取后才能离散。 hash大多时候是使用散列函数直接计算,比如取模,这样可以保证同样的数据对应同 阅读全文
posted @ 2024-03-08 19:18 Ian8877 阅读(12) 评论(0) 推荐(0) 编辑
摘要: 点分治是一种在树上进行的分治,可以方便的求解树上路径等问题。 例题:P3806 【模板】点分治 1 给定一棵树,询问树上是否存在长度为k的路径。 现在我们假设x为根节点, 那么一条路径长度为k有两种情况, 一种是经过x,一种不经过x, 第一种的两个端点在两个不同子树中, 第二种的两个端点在同一子树中 阅读全文
posted @ 2023-11-23 13:00 Ian8877 阅读(13) 评论(0) 推荐(0) 编辑
摘要: Master Theorem 用途 一种用于计算递归时间复杂度的定理。 比如对于一个时间复杂度递推式:\(T(n)=T(n/2)+O(n)\), 可以浅显地看出它的复杂度为\(O(nlog_2n)\),因为我们这样子的递归写了太多次了。 但我们可以看到\(T(n)=4T(n/2)+n\), 它的复杂 阅读全文
posted @ 2023-09-16 08:22 Ian8877 阅读(166) 评论(0) 推荐(0) 编辑
摘要: ## 逆元 求解$ax=b\pmod m$,其实等价于$ax+my=b$,然后扩欧就无了。 可以应用于求当是$a,p$互质,求$a$在模$p$意义下的逆元,方法就是求解$ax=1\pmod p$。 ## 中国剩余定理(CRT) ### 问题: 有$m_1,m_2,...,m_n$,$n$个整数两两互 阅读全文
posted @ 2023-08-27 16:37 Ian8877 阅读(18) 评论(0) 推荐(0) 编辑
摘要: ## 题意 题目给定了一个长度为$n$序列$a$与$m$个操作,操作一共有3种: 1.给定$x,y$,使$a_x$增加$y$。 2.给定$x$,使$a$中所有数全部乘上$x$。 3.给出k个数$c_1,c_2,...,c_k$,表示这个操作的任务是按照先后顺序执行编号为$c_1,c_2,...,c_ 阅读全文
posted @ 2023-08-27 15:58 Ian8877 阅读(53) 评论(0) 推荐(0) 编辑
摘要: 如果现在有一些操作,有些操作会产生贡献,同时里面的情况会依次发生更改,要求我们去维护发生更改后的总贡献。 这个问题会使得我们初感很棘手,主要原因在于这是一个动态的问题,当其中一个操作发生变化后会对很多的操作产生影响,导致寻常的数据结构难以维护。 而现在引入的CDQ分治可以将一个动态问题分成几个静态问 阅读全文
posted @ 2023-08-18 21:20 Ian8877 阅读(16) 评论(0) 推荐(0) 编辑
摘要: ## 定义 一张无向图,如果可以将节点分成两个部分,使得两个部分内部没有任何边相连,也就是每条边的端点都分属两个部分,就可以说这张图为二分图。 ## 判定 当且仅当图中不存在长度为奇数的环时,这一张图为二分图。 因为显然每经过一条边都会到达另一个部分,以此类推,经过奇数条边后比不可能还在一开始的部分 阅读全文
posted @ 2023-08-17 15:59 Ian8877 阅读(6) 评论(0) 推荐(0) 编辑
摘要: ## 强连通分量 对于一张有向图,对于图中任意两个节点$x,y$,$x$能到$y$,$y$也能到$x$,则称其为强连通图。有向图的极大联通子图被称为强连通分量,简记为SCC(Strongly Connected Component)。 有时候,我们需要将一张有向图分成几个强连通分量,这时候可以基于T 阅读全文
posted @ 2023-08-14 20:59 Ian8877 阅读(19) 评论(0) 推荐(0) 编辑
摘要: 题目链接:[P5522 [yLOI2019] 棠梨煎雪](https://www.luogu.com.cn/problem/P5522) 听着>写棠梨煎雪,太美妙了! ## 题意: 对于一些给定的字符串,每个字符串只包含$0,1$以及?号。对于一个字符串$s_1$,如果另一个不包含?号的串$s_2$ 阅读全文
posted @ 2023-08-13 20:23 Ian8877 阅读(8) 评论(0) 推荐(0) 编辑