动态规划背包以及序列问题

一、背包问题

  1. 参考资料
    背包九讲:01背包、完全背包、多重背包

  2. 模板题
    https://www.luogu.com.cn/training/8917

  3. 01背包

    • 状态转移方程:
      \( dp[i][j] = \begin{cases} 0 & i = 0\ or \ j = 0 \\ dp[i][j]= max(dp[i-1][j],\ dp[i-1][j - w[i]] + v[i]) & 1 \le i \le N \ , \ 1 \le i \le W \end{cases} \)

    • 优化空间(逆序迭代):
      \(dp[0] = 0\)
      \(dp[j] = max(dp[j], dp[j- w[i]] + v[i]\)

  4. 完全背包问题

    • 状态转移方程 :
      \(dp[i][j] = \begin{cases} 0 & i = 0\ or \ j = 0 \\ dp[i][j]= max(dp[i-1][j],\ dp[i][j - w[i]] + v[i]) & 1 \le i \le N \ , \ 1 \le i \le W \end{cases}\)

    • 优化空间(顺序迭代):
      \(dp[j] = max(dp[j], dp[j - w[i]] + v[i])\)

二、序列问题

https://www.luogu.com.cn/problem/P1439 最长公共子序列
https://leetcode-cn.com/problems/longest-increasing-subsequence/ 最长递增子序列

posted @ 2020-12-27 19:56  幽枫  阅读(44)  评论(0)    收藏  举报