01 2025 档案
摘要:### 树形dp 基于树的dp - dp 方法始终为从下至上进行 dp。- 在每个节点对所有儿子做聚合。- 可能需要多一遍 dfs 或者 bfs。 如何存图? ```cpp#include <bits/stdc++.h>using namespace std;const int maxn = 1e5
阅读全文
摘要:## DP ### 入门题 dp 三要素: 状态、 转移方程、 初始化条件。 状态: 。 转移方程:描述状态与状态之间的关系的式子。 初始化条件:没有办法用其他状态求出来的值的状态怎么求(边界)。 ##### Problem 1 $$F_n = \left\{\begin{aligned
阅读全文
摘要:##### 例一 第一行包含两个正整数 ,分别表示数列中实数的个数和操作的个数。 第二行包含 个实数,其中第 个实数表示数列的第 项。 接下来 行,每行为一条操作,格式为以下三种之一: 操作 :`1 x y k` ,表示将第 到第 项每
阅读全文
摘要:## 倍增&快速幂 ### 快速幂 计算一个数 的 次幂,怎么办? 观察:如果要计算一个数的 ,只需要把它作 次平方即可,因此实际上我们可以 地计算出一个数的 次方。 对于一般的数 用预处理。 我们预处理出 $
阅读全文
摘要:### 枚举与搜索 - 枚举:框定一个范围,遍历其中的所有东西。比如枚举左右端点成为一个区间。- 搜索:从一个初始状态出发,一步一步走到相邻的状态,遍历能走到的所有东西。比如走迷宫。 本质都是**用各种各样的策略去找东西** #### 枚举优化 1. 改变枚举对象:比如说从枚举左右端点改成枚举最值,
阅读全文