C++语法
C++ STL 高效使用指南:竞赛中你必须掌握的 STL 容器
在信息学竞赛中,熟练使用 STL 可以大幅提升编码效率。本文详细介绍竞赛高频使用的 STL 容器和算法。
**1. vector(动态数组)**
```cpp
vector v = {1, 2, 3};
v.push_back(...
#STL
#Vector
#Set
动态规划
动态规划终极总结:从入门到 NOI 金牌所需的所有 DP 技巧
本文整理了从 CSP-J 基础 DP 到 NOI 国集级别所需的全部动态规划技巧。
**一、线性 DP**
- 最长上升子序列(LIS):O(n²) 和 O(n log n) 两种做法
- 最长公共子序列(LCS)
- 最大子段...
#动态规划
#DP
#算法总结
C++语法
C++ STL 高效使用指南:竞赛中你必须掌握的 STL 容器
在信息学竞赛中,熟练使用 STL 可以大幅提升编码效率。本文详细介绍竞赛高频使用的 STL 容器和算法。
**1. vector(动态数组)**
```cpp
vector v = {1, 2, 3};
v.push_back(...
#STL
#Vector
#Set
动态规划
动态规划终极总结:从入门到 NOI 金牌所需的所有 DP 技巧
本文整理了从 CSP-J 基础 DP 到 NOI 国集级别所需的全部动态规划技巧。
**一、线性 DP**
- 最长上升子序列(LIS):O(n²) 和 O(n log n) 两种做法
- 最长公共子序列(LCS)
- 最大子段...
#动态规划
#DP
#算法总结
算法竞赛
贪心算法全解:从活动选择到拟阵理论的竞赛实战
贪心算法是竞赛中最常用的算法思想之一,看似简单,实则对思维要求很高。
**一、贪心算法核心思想**
每一步选择当前看起来最优的方案,期望最终得到全局最优解。
贪心成立的条件(之一):
- 问题具有最优子结构
- 贪心选择性...
#贪心
#算法
#拟阵
学习心得
信息学竞赛如何平衡文化课与训练?
在信息学竞赛的学习过程中,这个主题一直是很多同学感到困惑的地方。今天我想结合自己的学习和教学经验,系统性地整理一下,希望能帮助到正在备赛的同学们。
首先,我们需要明确这个知识点的理论基础。很多同学之所以觉得难,是因为没有理解其背后的数学原...
#学习
#心得
#刷题
算法竞赛
字符串算法入门:KMP、Trie、AC 自动机和字符串哈希
字符串算法在竞赛中的出现频率越来越高,本文带你系统掌握核心字符串算法。
**一、字符串哈希(Hash)**
最简单实用的字符串匹配方法。
- 将字符串映射为一个整数
- 使用前缀和 O(1) 求任意子串的哈希值
- 双哈希减少...
#字符串
#KMP
#Trie
数学建模
NOIP 数学专题:数论、组合数学、概率期望全部模板
数学是信息学竞赛的"隐藏关卡",很多题目到最后都是数学问题。
**一、数论基础**
- 素数筛:埃氏筛 O(n log log n)、欧拉筛 O(n)
- 快速幂:O(log n)
- 最大公约数:欧几里得算法(辗转相除法)
...
#数学
#数论
#组合数学
算法竞赛
深度优先搜索(DFS)入门到进阶:回溯、剪枝、迭代加深
DFS 是最基础的搜索算法,但它的变化和应用非常丰富。
**一、DFS 本质**
DFS = 深度优先搜索 = 一条路走到黑,碰壁再回头。
```cpp
void dfs(int u) {
if (到达目标状态) ...
#DFS
#搜索
#回溯
算法竞赛
BFS 与广度优先搜索进阶:最短路、双端队列 BFS、A*
BFS 是另一种基础搜索算法,在图论和搜索中有着广泛的应用。
**一、BFS 本质**
BFS = 广度优先搜索 = 层层扩展,像水波扩散。
核心数据结构:**队列(queue)**
```cpp
queue q;
q....
#BFS
#搜索
#最短路
数学建模
NOIP 数学专题:数论、组合数学、概率期望全部模板
数学是信息学竞赛的"隐藏关卡",很多题目到最后都是数学问题。
**一、数论基础**
- 素数筛:埃氏筛 O(n log log n)、欧拉筛 O(n)
- 快速幂:O(log n)
- 最大公约数:欧几里得算法(辗转相除法)
...
#数学
#数论
#组合数学
C++语法
深入理解 C++ 指针与引用在竞赛中的应用
在信息学竞赛的学习过程中,这个主题一直是很多同学感到困惑的地方。今天我想结合自己的学习和教学经验,系统性地整理一下,希望能帮助到正在备赛的同学们。
首先,我们需要明确这个知识点的理论基础。很多同学之所以觉得难,是因为没有理解其背后的数学原...
#C++
#语法
#STL