随笔分类 - 数据结构
摘要:P3312 [SDOI2014]数表 Description 多测,\(Q\) 组数据。 有一张 \(n\times m\) 的数表,其第 \(i\) 行第 \(j\) 列(\(1\le i\le n, 1\le j\le m\))的数值为能同时整除 \(i\) 和 \(j\) 的所有自然数之和。给
阅读全文
摘要:P3700 [CQOI2017]小Q的表格 Description 有一个无穷多行,无穷多列的表格,行列从 \(1\) 开始标号,第 \(a\) 行 \(b\) 列有一个整数 \(f(a, b)\); \(f(a, b)\) 应满足: \(\forall a, b \in \mathbb{N}^*,
阅读全文
摘要:D. The Child and Sequence Description 给定数列,区间查询和,区间取模,单点修改。 \(n, m \leq 10^5, a_i\le 10^9\)。 Solution 思路与 花神游历各国 很像。 假设现在是 \(x\bmod p\): 若 \(x < p\):不
阅读全文
摘要:与恶龙缠斗过久,自身亦成为恶龙。凝视深渊过久,深渊将回以凝视。 ——尼采 《善恶的彼岸》 P4774 [NOI2018] 屠龙勇士 Description 玩家需要按照编号 \(1 \to n\) 顺序杀掉 \(n\) 条巨龙,每条巨龙拥有一个初始的生命值 \(b_i\)。同时每条巨龙拥有恢复能
阅读全文
摘要:树链剖分是把一棵树分割成若干条链,以进行树上操作的一种方法。树链剖分有很多种类,本文主要介绍最常用的重链剖分。 重链剖分 一、定义 一个节点的子节点中子树大小最大的为重子节点,其余节点为轻子节点。特别地,若有多个子节点的子树大小相等,则在其中任选一个作为重子节点,其余为轻子节点。 一个节点到其重子节
阅读全文
摘要:1.什么是 RMQ & ST? RMQ 是一种区间最值查询的问题,我们珂以用线段树或树状数组来解决,但今天我们要用的是——ST表。 要注意的是,ST表只珂以用于静态区间求最值,而动态区间就只能用线段树或树状数组了。 2.ST 算法思想简述 ST 算法使用了 DP 的思想。 我们用 \(f(i,j)\
阅读全文
摘要:1. 什么是树状数组? 树状数组是一个查询和修改复杂度都为 \(\operatorname{O}(\log n)\) 的数据结构。 看到这句话是不是想到了线段树? 是的! 但是,凡是可以使用树状数组解决的问题, 使用线段树一定可以解决, 但是线段树能够解决的问题树状数组未必能够解决。 哦,那还是用线
阅读全文