摘要:
一、简介 基础问题$(0, 1背包)$ 有 $N$ 件物品和一个容量是 $V$ 的背包。每件物品只能使用一次。第 $i$ 件物品的体积是 $v_i$,价值是 $w_i$。求解将哪些物品装入背包,可使这些物品的总体积不超过背包容量,且总价值最大。输出最大价值。 问题变形 完全背包:每种物品都有无限多个 阅读全文
posted @ 2023-04-06 22:39
lixycc
阅读(122)
评论(0)
推荐(0)
摘要:
题目链接:1798. 你能构造出连续值的最大数目 方法:排序 + 贪心 解题思路 先将 $coins$ 数组从小到大排序,假设现有 $[0, x]$ 的连续整数序列,此时从 $coins$ 中选取一个值 $y$,则可以新构造 $[y, x + y]$ 序列;若 $x + 1 >= y$,则说明 $[ 阅读全文
posted @ 2023-04-06 22:36
lixycc
阅读(27)
评论(0)
推荐(0)
摘要:
题目链接:剑指 Offer 14- II. 剪绳子 II 方法:数论 解题思路 将 $n$ 分为 $m$ 个数的和,使得这 $m$ 个数的乘积最大,那么应该将 $m$ 个数分为 $2$ 和 $3$ 的组合, 尽可能为 $3$。注意大数越界问题。 代码 class Solution { public: 阅读全文
posted @ 2023-04-06 22:31
lixycc
阅读(24)
评论(0)
推荐(0)
摘要:
题目链接: 剑指 Offer 14- I. 剪绳子 方法:数论 解题思路 将 $n$ 分为 $m$ 个数的和,使得这 $m$ 个数的乘积最大,那么应该将 $m$ 个数分为 $2$ 和 $3$ 的组合, 尽可能为 $3$。 代码 class Solution { public: int cutting 阅读全文
posted @ 2023-04-06 22:27
lixycc
阅读(21)
评论(0)
推荐(0)
摘要:
题目链接:1145. 二叉树着色游戏 方法:分类 解题思路 (1)$x$ 节点将二叉树分成了 $3$ 部分,分别是父节点子树、左子树、右子树(节点数分别为 n1 n2 n3); {:width=400} (2)为了使得二号玩家染色尽可能的多,应该让 $y$ 选择在 $x$ 相邻的节点。若存在以下一种 阅读全文
posted @ 2023-04-06 22:17
lixycc
阅读(21)
评论(0)
推荐(0)
摘要:
题目链接:129. 颜色交替的最短路径 方法:BFS 解题思路 当边的权重为 $1$ 时,可以使用 $BFS$ 计算最短路径; 因为起始边有两种情况,所以都需要计算,最后取两者的最小值; 代码 class Solution { public: vector<int> shortestAlternat 阅读全文
posted @ 2023-04-06 22:12
lixycc
阅读(42)
评论(0)
推荐(0)
摘要:
题目链接:剑指 Offer 12. 矩阵中的路径 方法:DFS 解题思路 根据 $word$ 中的第一个字母,从 $board$ 网格中开始查找,通过 $DFS$ 算法思想实现。 注意: 在每一轮开始查找前,每个位置的标记应该清除; 每一个位置有上 下 左 右四个方向可以选择; $DFS$ 查找进入 阅读全文
posted @ 2023-04-06 22:10
lixycc
阅读(31)
评论(0)
推荐(0)

浙公网安备 33010602011771号