Loading docs/dp/knapsack.md +42 −42 Original line number Diff line number Diff line Loading @@ -150,7 +150,7 @@ int main() { ??? 二进制分组代码 ```c++ ```cpp index = 0; for(int i = 1; i <= m; i++) { int c = 1, p, h, k; Loading @@ -172,7 +172,7 @@ int main() { 这种题目看起来很吓人,可是只要领悟了前面几种背包的中心思想,并将其合并在一起就可以了。下面给出伪代码: ```c++ ```cpp for (循环物品种类) { if (是0-1背包) Loading @@ -196,7 +196,7 @@ for (循环物品种类) 例题核心代码: ```c++ ```cpp for (int k=1;k<=n;k++) { for (int i=m;i>=mi;i--)//对经费进行一层枚举 Loading @@ -217,7 +217,7 @@ for (int k=1;k<=n;k++) 例题核心代码: ```c++ ```cpp for (int k=1;k<=ts;k++)//循环每一组 for (int i=m;i>=0;i--)//循环背包容量 for (int j=1;j<=cnt[k];j++)//循环该组的每一个物品 Loading Loading @@ -254,7 +254,7 @@ for (int k=1;k<=ts;k++)//循环每一组 输出方案其实就是记录下来背包中的某一个状态是怎么推出来的。我们可以用$g_{i,v}$表示第$i$件物品占用空间为$v$的时候是否选择了此物品。然后在转移时记录是选用了哪一种策略(选或不选)。输出时的伪代码: ```c++ ```cpp int v=V;//记录当前的存储空间 for (从最后一件循环至第一件)//因为最后一件物品存储的是最终状态,所以从最后一件物品进行循环 { Loading Loading @@ -284,12 +284,12 @@ $$ #### 求最优方案总数 占坑待填 巨坑待填 #### 求第 k 优解 占坑待填 巨坑待填 ### 参考资料 dd大牛(崔添翼)的背包九讲,,GitHub仓库链接:[tianyicui/pack: 背包问题九讲](https://github.com/tianyicui/pack)。 dd大牛(崔添翼)的背包九讲,GitHub仓库链接:[tianyicui/pack: 背包问题九讲](https://github.com/tianyicui/pack)。 Loading
docs/dp/knapsack.md +42 −42 Original line number Diff line number Diff line Loading @@ -150,7 +150,7 @@ int main() { ??? 二进制分组代码 ```c++ ```cpp index = 0; for(int i = 1; i <= m; i++) { int c = 1, p, h, k; Loading @@ -172,7 +172,7 @@ int main() { 这种题目看起来很吓人,可是只要领悟了前面几种背包的中心思想,并将其合并在一起就可以了。下面给出伪代码: ```c++ ```cpp for (循环物品种类) { if (是0-1背包) Loading @@ -196,7 +196,7 @@ for (循环物品种类) 例题核心代码: ```c++ ```cpp for (int k=1;k<=n;k++) { for (int i=m;i>=mi;i--)//对经费进行一层枚举 Loading @@ -217,7 +217,7 @@ for (int k=1;k<=n;k++) 例题核心代码: ```c++ ```cpp for (int k=1;k<=ts;k++)//循环每一组 for (int i=m;i>=0;i--)//循环背包容量 for (int j=1;j<=cnt[k];j++)//循环该组的每一个物品 Loading Loading @@ -254,7 +254,7 @@ for (int k=1;k<=ts;k++)//循环每一组 输出方案其实就是记录下来背包中的某一个状态是怎么推出来的。我们可以用$g_{i,v}$表示第$i$件物品占用空间为$v$的时候是否选择了此物品。然后在转移时记录是选用了哪一种策略(选或不选)。输出时的伪代码: ```c++ ```cpp int v=V;//记录当前的存储空间 for (从最后一件循环至第一件)//因为最后一件物品存储的是最终状态,所以从最后一件物品进行循环 { Loading Loading @@ -284,12 +284,12 @@ $$ #### 求最优方案总数 占坑待填 巨坑待填 #### 求第 k 优解 占坑待填 巨坑待填 ### 参考资料 dd大牛(崔添翼)的背包九讲,,GitHub仓库链接:[tianyicui/pack: 背包问题九讲](https://github.com/tianyicui/pack)。 dd大牛(崔添翼)的背包九讲,GitHub仓库链接:[tianyicui/pack: 背包问题九讲](https://github.com/tianyicui/pack)。