摘要:
一、左偏树能做什么? **左偏树(Leftist Tree)是一种维护可并堆(Mergeable Heap)**的数据结构。 可并堆是一种抽象数据结构(Abstract Data Type, ADT),在普通的**堆(Heap)**的基础上,增添了 upd 操作,使得两个堆可以合并。这也是其名之来历 阅读全文
摘要:
例题:区间加,区间查询 下文使用 \(m\) 表示查询次数,以示区分。 朴素做法 \(O(m\times n)\). 我们发现需要优化后面这个 \(n\). 考虑分块。将整个区间打成 \(\lceil n / \sqrt{n} \rceil\) 块。 称有 \(\sqrt{n}\) 个数于其中的块为 阅读全文
摘要:
约定:以下用 MST 表示最小生成树,SeMST 表示次小生成树。 一、MST MST 有两种较常用的算法,分别是 Kruskal 算法和 Prim 算法。由于一些原因,这里只介绍 Kruskal 算法。 Kruskal 算法是一个贪心算法。它的根本是,要求生成树边权和最小,就尝试让每一条边都最小。 阅读全文
摘要:
AcWing 246. 区间最大公约数 题意简述:区间加,区间 gcd. 解: 根据更相减损术,有 \(\gcd(x,y)=\gcd(x,y-x)\). 一般地,有 \(\mathbf{\gcd(a_1,a_2,\cdots,a_n)=\gcd(a_1,a_2-a_1,\cdots,a_n-a_{n 阅读全文
摘要:
令答案为 \(g(n,k)\). 根据题意可知,\(g(1,0)=0,g(1,1)=1\). 我们可以通过递归的方式得到答案。 具体地,当 \(k<2^{n-1}\) 时,\(g(n,k)=0\sim g(n-1,k)\). 当 \(k\ge 2^{n-1}\) 时,\(g(n,k)=1\sim g 阅读全文
摘要:
Div2 B 博 弈 论 /yiw 阅读全文