mirror of
https://gitcode.com/Zengtudor/alg2025.git
synced 2025-09-04 01:01:43 +00:00
重构动态规划的实现方式,将原来的双重循环改为基于长度的遍历,提高代码可读性和效率。同时修复了最大值和最小值的计算逻辑,确保正确处理加法和乘法操作。添加结果收集和输出部分,完善程序功能。 |
||
---|---|---|
.vscode | ||
include/bits | ||
src | ||
.clang-format | ||
.gitignore | ||
CMakeLists.txt | ||
README.md |
算法笔记
线性动态规划优化为$O(n\log{n})$方法
如果是递增序列就lower_bound
如果是递减序列就手写二分
区间dp
步骤
- 根据问题推出dp含义
- 根据规则写出dp的状态转移公式
- 处理边界问题
dp[i][j], dp[0][0], dp[i][0], dp[0][j], dp[i][i], dp[j][j]
- 编辑距离 i-1,j i,j-1
- 合并石子 1~k,k+1~i
- 网捉蛇 1~k用j-1, k+1~i用1