数据结构
并查集完全指南:基础、带权、种类并查集与可撤销
并查集是最简洁而强大的数据结构之一,本文全面梳理其应用。
**一、基础并查集**
维护集合的合并与查找:
```cpp
int fa[N];
int find(int x) { return fa[x] == x ? x : ...
#并查集
#数据结构
#带权并查集
动态规划
动态规划终极总结:从入门到 NOI 金牌所需的所有 DP 技巧
本文整理了从 CSP-J 基础 DP 到 NOI 国集级别所需的全部动态规划技巧。
**一、线性 DP**
- 最长上升子序列(LIS):O(n²) 和 O(n log n) 两种做法
- 最长公共子序列(LCS)
- 最大子段...
#动态规划
#DP
#算法总结
动态规划
动态规划终极总结:从入门到 NOI 金牌所需的所有 DP 技巧
本文整理了从 CSP-J 基础 DP 到 NOI 国集级别所需的全部动态规划技巧。
**一、线性 DP**
- 最长上升子序列(LIS):O(n²) 和 O(n log n) 两种做法
- 最长公共子序列(LCS)
- 最大子段...
#动态规划
#DP
#算法总结
数据结构
线段树从入门到精通:原理、模板与常见变种全解析
线段树是信息学竞赛中最核心的数据结构之一,本文将带你从零基础到熟练掌握。
**一、线段树本质**
线段树是一种二叉树,每个节点代表一个区间。叶子节点存储单个元素,内部节点存储其子节点区间的合并信息(如区间和、区间最大值、区间最小值等...
#线段树
#数据结构
#懒标记
数学建模
NOIP 数学专题:数论、组合数学、概率期望全部模板
数学是信息学竞赛的"隐藏关卡",很多题目到最后都是数学问题。
**一、数论基础**
- 素数筛:埃氏筛 O(n log log n)、欧拉筛 O(n)
- 快速幂:O(log n)
- 最大公约数:欧几里得算法(辗转相除法)
...
#数学
#数论
#组合数学
数学建模
NOIP 数学专题:数论、组合数学、概率期望全部模板
数学是信息学竞赛的"隐藏关卡",很多题目到最后都是数学问题。
**一、数论基础**
- 素数筛:埃氏筛 O(n log log n)、欧拉筛 O(n)
- 快速幂:O(log n)
- 最大公约数:欧几里得算法(辗转相除法)
...
#数学
#数论
#组合数学
数据结构
线段树从入门到精通:原理、模板与常见变种全解析
线段树是信息学竞赛中最核心的数据结构之一,本文将带你从零基础到熟练掌握。
**一、线段树本质**
线段树是一种二叉树,每个节点代表一个区间。叶子节点存储单个元素,内部节点存储其子节点区间的合并信息(如区间和、区间最大值、区间最小值等...
#线段树
#数据结构
#懒标记
图论算法
图论算法全家桶:最短路径、最小生成树、网络流一网打尽
图论是 NOI 级别的核心考点,约占总分的 25%-35%。本文系统整理竞赛中需要的图论算法。
**一、图的基础**
- 邻接矩阵、邻接表、链式前向星(竞赛首选)
- 有向图/无向图、连通图、完全图
- 度、入度、出度、路径、回...
#图论
#最短路
#网络流
图论算法
图论算法全家桶:最短路径、最小生成树、网络流一网打尽
图论是 NOI 级别的核心考点,约占总分的 25%-35%。本文系统整理竞赛中需要的图论算法。
**一、图的基础**
- 邻接矩阵、邻接表、链式前向星(竞赛首选)
- 有向图/无向图、连通图、完全图
- 度、入度、出度、路径、回...
#图论
#最短路
#网络流
数据结构
字典树(Trie)的 44 种奇妙用途
在信息学竞赛的学习过程中,这个主题一直是很多同学感到困惑的地方。今天我想结合自己的学习和教学经验,系统性地整理一下,希望能帮助到正在备赛的同学们。
首先,我们需要明确这个知识点的理论基础。很多同学之所以觉得难,是因为没有理解其背后的数学原...
#数据结构
#优化
#模板
资源分享
竞赛代码模板大合集:C++ 快读快写、对拍、调试宏
整理了一份竞赛常用代码模板,考试前打印出来看一遍。
**一、快读快写模板**
```cpp
inline int read() {
int x = 0, f = 1; char ch = getchar();
...
#模板
#快读
#对拍
资源分享
竞赛代码模板大合集:C++ 快读快写、对拍、调试宏
整理了一份竞赛常用代码模板,考试前打印出来看一遍。
**一、快读快写模板**
```cpp
inline int read() {
int x = 0, f = 1; char ch = getchar();
...
#模板
#快读
#对拍