摘要: 记忆化递归 class Solution { public: //记忆化递归 std::unordered_map<TreeNode* , int> tmap; int rob(TreeNode* root) { // 对于当前节点 // 如果去偷 能获取到的最大利润 root->val + rob 阅读全文
posted @ 2021-05-22 14:49 boyang987 阅读(54) 评论(0) 推荐(0) 编辑
摘要: 思路 目标是让石头分割成尽量相等的两堆 等和数组 背包容量是sum/2 , 问题是选哪些元素可以使得背包最满 设dp[i][j] 表示背包容量是j , 前面[..i]物品能装的最大体积 dp[i][j] = dp[i-1][j] when 不放第i件物品 dp[i][j] = dp[i][j-num 阅读全文
posted @ 2021-05-22 13:56 boyang987 阅读(30) 评论(0) 推荐(0) 编辑