mirror of
https://github.com/krahets/hello-algo.git
synced 2026-04-04 03:00:06 +08:00
deploy
This commit is contained in:
@@ -25,7 +25,7 @@
|
||||
|
||||
|
||||
|
||||
<title>13.5. 完全背包问题(New) - Hello 算法</title>
|
||||
<title>14.5. 完全背包问题(New) - Hello 算法</title>
|
||||
|
||||
|
||||
|
||||
@@ -79,7 +79,7 @@
|
||||
<div data-md-component="skip">
|
||||
|
||||
|
||||
<a href="#135" class="md-skip">
|
||||
<a href="#145" class="md-skip">
|
||||
跳转至
|
||||
</a>
|
||||
|
||||
@@ -113,7 +113,7 @@
|
||||
<div class="md-header__topic" data-md-component="header-topic">
|
||||
<span class="md-ellipsis">
|
||||
|
||||
13.5. 完全背包问题(New)
|
||||
14.5. 完全背包问题(New)
|
||||
|
||||
</span>
|
||||
</div>
|
||||
@@ -1771,6 +1771,87 @@
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="md-nav__link md-nav__link--index ">
|
||||
<a href="../../chapter_divide_and_conquer/">12. 分治</a>
|
||||
|
||||
<label for="__nav_13">
|
||||
<span class="md-nav__icon md-icon"></span>
|
||||
</label>
|
||||
|
||||
</div>
|
||||
|
||||
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_13_label" aria-expanded="false">
|
||||
<label class="md-nav__title" for="__nav_13">
|
||||
<span class="md-nav__icon md-icon"></span>
|
||||
12. 分治
|
||||
</label>
|
||||
<ul class="md-nav__list" data-md-scrollfix>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_divide_and_conquer/divide_and_conquer/" class="md-nav__link">
|
||||
12.1. 分治算法(New)
|
||||
</a>
|
||||
</li>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_divide_and_conquer/build_binary_tree/" class="md-nav__link">
|
||||
12.2. 构建树问题(New)
|
||||
</a>
|
||||
</li>
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
</li>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<li class="md-nav__item md-nav__item--nested">
|
||||
|
||||
|
||||
|
||||
|
||||
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_14" >
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1782,18 +1863,18 @@
|
||||
|
||||
|
||||
<div class="md-nav__link md-nav__link--index ">
|
||||
<a href="../../chapter_backtracking/">12. 回溯</a>
|
||||
<a href="../../chapter_backtracking/">13. 回溯</a>
|
||||
|
||||
<label for="__nav_13">
|
||||
<label for="__nav_14">
|
||||
<span class="md-nav__icon md-icon"></span>
|
||||
</label>
|
||||
|
||||
</div>
|
||||
|
||||
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_13_label" aria-expanded="false">
|
||||
<label class="md-nav__title" for="__nav_13">
|
||||
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_14_label" aria-expanded="false">
|
||||
<label class="md-nav__title" for="__nav_14">
|
||||
<span class="md-nav__icon md-icon"></span>
|
||||
12. 回溯
|
||||
13. 回溯
|
||||
</label>
|
||||
<ul class="md-nav__list" data-md-scrollfix>
|
||||
|
||||
@@ -1806,7 +1887,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_backtracking/backtracking_algorithm/" class="md-nav__link">
|
||||
12.1. 回溯算法
|
||||
13.1. 回溯算法
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -1820,7 +1901,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_backtracking/permutations_problem/" class="md-nav__link">
|
||||
12.2. 全排列问题
|
||||
13.2. 全排列问题
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -1834,7 +1915,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_backtracking/subset_sum_problem/" class="md-nav__link">
|
||||
12.3. 子集和问题
|
||||
13.3. 子集和问题
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -1848,7 +1929,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_backtracking/n_queens_problem/" class="md-nav__link">
|
||||
12.4. N 皇后问题
|
||||
13.4. N 皇后问题
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -1862,7 +1943,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_backtracking/summary/" class="md-nav__link">
|
||||
12.5. 小结
|
||||
13.5. 小结
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -1890,7 +1971,7 @@
|
||||
|
||||
|
||||
|
||||
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_14" checked>
|
||||
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_15" checked>
|
||||
|
||||
|
||||
|
||||
@@ -1917,18 +1998,18 @@
|
||||
|
||||
|
||||
<div class="md-nav__link md-nav__link--index ">
|
||||
<a href="../">13. 动态规划</a>
|
||||
<a href="../">14. 动态规划</a>
|
||||
|
||||
<label for="__nav_14">
|
||||
<label for="__nav_15">
|
||||
<span class="md-nav__icon md-icon"></span>
|
||||
</label>
|
||||
|
||||
</div>
|
||||
|
||||
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_14_label" aria-expanded="true">
|
||||
<label class="md-nav__title" for="__nav_14">
|
||||
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_15_label" aria-expanded="true">
|
||||
<label class="md-nav__title" for="__nav_15">
|
||||
<span class="md-nav__icon md-icon"></span>
|
||||
13. 动态规划
|
||||
14. 动态规划
|
||||
</label>
|
||||
<ul class="md-nav__list" data-md-scrollfix>
|
||||
|
||||
@@ -1941,7 +2022,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../intro_to_dynamic_programming/" class="md-nav__link">
|
||||
13.1. 初探动态规划(New)
|
||||
14.1. 初探动态规划(New)
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -1955,7 +2036,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../dp_problem_features/" class="md-nav__link">
|
||||
13.2. DP 问题特性(New)
|
||||
14.2. DP 问题特性(New)
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -1969,7 +2050,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../dp_solution_pipeline/" class="md-nav__link">
|
||||
13.3. DP 解题思路(New)
|
||||
14.3. DP 解题思路(New)
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -1983,7 +2064,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../knapsack_problem/" class="md-nav__link">
|
||||
13.4. 0-1 背包问题(New)
|
||||
14.4. 0-1 背包问题(New)
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -2006,12 +2087,12 @@
|
||||
|
||||
|
||||
<label class="md-nav__link md-nav__link--active" for="__toc">
|
||||
13.5. 完全背包问题(New)
|
||||
14.5. 完全背包问题(New)
|
||||
<span class="md-nav__icon md-icon"></span>
|
||||
</label>
|
||||
|
||||
<a href="./" class="md-nav__link md-nav__link--active">
|
||||
13.5. 完全背包问题(New)
|
||||
14.5. 完全背包问题(New)
|
||||
</a>
|
||||
|
||||
|
||||
@@ -2030,22 +2111,22 @@
|
||||
<ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#1351" class="md-nav__link">
|
||||
13.5.1. 完全背包问题
|
||||
<a href="#1451" class="md-nav__link">
|
||||
14.5.1. 完全背包问题
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#1352" class="md-nav__link">
|
||||
13.5.2. 零钱兑换问题
|
||||
<a href="#1452" class="md-nav__link">
|
||||
14.5.2. 零钱兑换问题
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#1353-ii" class="md-nav__link">
|
||||
13.5.3. 零钱兑换问题 II
|
||||
<a href="#1453-ii" class="md-nav__link">
|
||||
14.5.3. 零钱兑换问题 II
|
||||
</a>
|
||||
|
||||
</li>
|
||||
@@ -2066,7 +2147,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../edit_distance_problem/" class="md-nav__link">
|
||||
13.6. 编辑距离问题(New)
|
||||
14.6. 编辑距离问题(New)
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -2080,76 +2161,7 @@
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../summary/" class="md-nav__link">
|
||||
13.7. 小结(New)
|
||||
</a>
|
||||
</li>
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
</li>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<li class="md-nav__item md-nav__item--nested">
|
||||
|
||||
|
||||
|
||||
|
||||
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_15" >
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<label class="md-nav__link" for="__nav_15" id="__nav_15_label" tabindex="0">
|
||||
14. 附录
|
||||
<span class="md-nav__icon md-icon"></span>
|
||||
</label>
|
||||
|
||||
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_15_label" aria-expanded="false">
|
||||
<label class="md-nav__title" for="__nav_15">
|
||||
<span class="md-nav__icon md-icon"></span>
|
||||
14. 附录
|
||||
</label>
|
||||
<ul class="md-nav__list" data-md-scrollfix>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_appendix/installation/" class="md-nav__link">
|
||||
14.1. 编程环境安装
|
||||
</a>
|
||||
</li>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_appendix/contribution/" class="md-nav__link">
|
||||
14.2. 一起参与创作
|
||||
14.7. 小结(New)
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@@ -2180,6 +2192,75 @@
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<label class="md-nav__link" for="__nav_16" id="__nav_16_label" tabindex="0">
|
||||
15. 附录
|
||||
<span class="md-nav__icon md-icon"></span>
|
||||
</label>
|
||||
|
||||
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_16_label" aria-expanded="false">
|
||||
<label class="md-nav__title" for="__nav_16">
|
||||
<span class="md-nav__icon md-icon"></span>
|
||||
15. 附录
|
||||
</label>
|
||||
<ul class="md-nav__list" data-md-scrollfix>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_appendix/installation/" class="md-nav__link">
|
||||
15.1. 编程环境安装
|
||||
</a>
|
||||
</li>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="../../chapter_appendix/contribution/" class="md-nav__link">
|
||||
15.2. 一起参与创作
|
||||
</a>
|
||||
</li>
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
</li>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<li class="md-nav__item md-nav__item--nested">
|
||||
|
||||
|
||||
|
||||
|
||||
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_17" >
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -2192,8 +2273,8 @@
|
||||
|
||||
</div>
|
||||
|
||||
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_16_label" aria-expanded="false">
|
||||
<label class="md-nav__title" for="__nav_16">
|
||||
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_17_label" aria-expanded="false">
|
||||
<label class="md-nav__title" for="__nav_17">
|
||||
<span class="md-nav__icon md-icon"></span>
|
||||
参考文献
|
||||
</label>
|
||||
@@ -2234,22 +2315,22 @@
|
||||
<ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#1351" class="md-nav__link">
|
||||
13.5.1. 完全背包问题
|
||||
<a href="#1451" class="md-nav__link">
|
||||
14.5.1. 完全背包问题
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#1352" class="md-nav__link">
|
||||
13.5.2. 零钱兑换问题
|
||||
<a href="#1452" class="md-nav__link">
|
||||
14.5.2. 零钱兑换问题
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#1353-ii" class="md-nav__link">
|
||||
13.5.3. 零钱兑换问题 II
|
||||
<a href="#1453-ii" class="md-nav__link">
|
||||
14.5.3. 零钱兑换问题 II
|
||||
</a>
|
||||
|
||||
</li>
|
||||
@@ -2277,9 +2358,9 @@
|
||||
|
||||
|
||||
|
||||
<h1 id="135">13.5. 完全背包问题<a class="headerlink" href="#135" title="Permanent link">¶</a></h1>
|
||||
<h1 id="145">14.5. 完全背包问题<a class="headerlink" href="#145" title="Permanent link">¶</a></h1>
|
||||
<p>在本节,我们先求解 0-1 背包的一个变种问题:完全背包问题;再了解完全背包的一种特例问题:零钱兑换。</p>
|
||||
<h2 id="1351">13.5.1. 完全背包问题<a class="headerlink" href="#1351" title="Permanent link">¶</a></h2>
|
||||
<h2 id="1451">14.5.1. 完全背包问题<a class="headerlink" href="#1451" title="Permanent link">¶</a></h2>
|
||||
<div class="admonition question">
|
||||
<p class="admonition-title">Question</p>
|
||||
<p>给定 <span class="arithmatex">\(n\)</span> 种物品,第 <span class="arithmatex">\(i\)</span> 个物品的重量为 <span class="arithmatex">\(wgt[i-1]\)</span> 、价值为 <span class="arithmatex">\(val[i-1]\)</span> ,现在有个容量为 <span class="arithmatex">\(cap\)</span> 的背包,<strong>每种物品可以重复选取</strong>,问在不超过背包容量下背包中物品的最大价值。</p>
|
||||
@@ -2559,7 +2640,7 @@ dp[i, c] = \max(dp[i-1, c], dp[i, c - wgt[i-1]] + val[i-1])
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<h2 id="1352">13.5.2. 零钱兑换问题<a class="headerlink" href="#1352" title="Permanent link">¶</a></h2>
|
||||
<h2 id="1452">14.5.2. 零钱兑换问题<a class="headerlink" href="#1452" title="Permanent link">¶</a></h2>
|
||||
<p>背包问题是一大类动态规划问题的代表,其拥有很多的变种,例如零钱兑换问题。</p>
|
||||
<div class="admonition question">
|
||||
<p class="admonition-title">Question</p>
|
||||
@@ -2905,7 +2986,7 @@ dp[i, a] = \min(dp[i-1, a], dp[i, a - coins[i-1]] + 1)
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<h2 id="1353-ii">13.5.3. 零钱兑换问题 II<a class="headerlink" href="#1353-ii" title="Permanent link">¶</a></h2>
|
||||
<h2 id="1453-ii">14.5.3. 零钱兑换问题 II<a class="headerlink" href="#1453-ii" title="Permanent link">¶</a></h2>
|
||||
<div class="admonition question">
|
||||
<p class="admonition-title">Question</p>
|
||||
<p>给定 <span class="arithmatex">\(n\)</span> 种硬币,第 <span class="arithmatex">\(i\)</span> 个硬币的面值为 <span class="arithmatex">\(coins[i - 1]\)</span> ,目标金额为 <span class="arithmatex">\(amt\)</span> ,每种硬币可以重复选取,<strong>问在凑出目标金额的硬币组合数量</strong>。</p>
|
||||
@@ -3249,7 +3330,7 @@ dp[i, a] = dp[i-1, a] + dp[i, a - coins[i-1]]
|
||||
<nav class="md-footer__inner md-grid" aria-label="页脚" >
|
||||
|
||||
|
||||
<a href="../knapsack_problem/" class="md-footer__link md-footer__link--prev" aria-label="上一页: 13.4. &nbsp; 0-1 背包问题(New)" rel="prev">
|
||||
<a href="../knapsack_problem/" class="md-footer__link md-footer__link--prev" aria-label="上一页: 14.4. &nbsp; 0-1 背包问题(New)" rel="prev">
|
||||
<div class="md-footer__button md-icon">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11h12Z"/></svg>
|
||||
</div>
|
||||
@@ -3258,20 +3339,20 @@ dp[i, a] = dp[i-1, a] + dp[i, a - coins[i-1]]
|
||||
上一页
|
||||
</span>
|
||||
<div class="md-ellipsis">
|
||||
13.4. 0-1 背包问题(New)
|
||||
14.4. 0-1 背包问题(New)
|
||||
</div>
|
||||
</div>
|
||||
</a>
|
||||
|
||||
|
||||
|
||||
<a href="../edit_distance_problem/" class="md-footer__link md-footer__link--next" aria-label="下一页: 13.6. &nbsp; 编辑距离问题(New)" rel="next">
|
||||
<a href="../edit_distance_problem/" class="md-footer__link md-footer__link--next" aria-label="下一页: 14.6. &nbsp; 编辑距离问题(New)" rel="next">
|
||||
<div class="md-footer__title">
|
||||
<span class="md-footer__direction">
|
||||
下一页
|
||||
</span>
|
||||
<div class="md-ellipsis">
|
||||
13.6. 编辑距离问题(New)
|
||||
14.6. 编辑距离问题(New)
|
||||
</div>
|
||||
</div>
|
||||
<div class="md-footer__button md-icon">
|
||||
|
||||
Reference in New Issue
Block a user