Dynamic Programming II
- 状态机模型 💡
状态机模型
StateMachine1
0表示当前没有选择盗窃1表示当前选择盗窃
Draw1
1 | |
StateMachine2
0表示不持有股票1表示持有股票
Draw2
- 由于本题还有限制最大交易次数,所以需要增加一个维度
1 | |
StateMachine3
Draw3
0表示不持有股票,且不在冷冻期1表示持有股票2表示不持有股票,且在冷冻期
1 | |
StateMachine4
- 一看到
KMP就 PTSD - 详解看 https://www.acwing.com/solution/content/55449/
dp[i + 1][ptr] = (dp[i + 1][ptr] + dp[i][j]) % mod;因为每一次匹配操作最多只会增加一个字符,因此对于考虑(i+1)长度时的最大匹配后缀的ptr与(i)长度时的最大匹配后缀j仅下面三种情况:- ptr = 0
- ptr = j
- ptr = j + 1
1 | |
Dynamic Programming II
https://github.com/Cookiecoolkid/Cookiecoolkid.github.io/2024/09/19/Dynamic-Programming-II/