Unverified Commit 8e4e03b0 authored by Shuhao Zhang's avatar Shuhao Zhang Committed by GitHub
Browse files

Merge branch 'master' into cc-basic

parents 9314d83e 5ceccf3d
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
## 算法

快速排序是 [分治](/basic/divide-and-conquer) 地来将一个数组排序。
快速排序是 [分治](./divide-and-conquer.md) 地来将一个数组排序。

快速排序分为三个过程:

+1 −1
Original line number Diff line number Diff line
DAG 即 [有向无环图](/graph/dag) ,一些实际问题中的二元关系都可使用 DAG 来建模。
DAG 即 [有向无环图](../graph/dag.md) ,一些实际问题中的二元关系都可使用 DAG 来建模。

## 例子

+3 −7
Original line number Diff line number Diff line
> 想体验把暴搜改改就是正解的快感吗?想体验状压 dp 看似状态多到爆炸实际一跑却嗷嗷快(实际有效的状态数很少)的荣耀吗?记忆化搜索,符合您的需求!只要 998 , 记忆化搜索带回家!记忆化搜索,记忆化搜索,再说一遍,记忆化搜索!

* * *

## 记忆化搜索是啥

好,就[NOIP 2005 采药](https://vijos.org/p/1104) 为例:
[NOIP 2005 采药](https://vijos.org/p/1104) 为例:

> 山洞里有 M 株不同的草药,采每一株都需要一些时间 $t_i$ ,每一株也有它自身的价值 $v_i$ 。我会给你一段时间 T,在这段时间里,你可以采到一些草药。让采到的草药的总价值最大。

我不会动态规划,只会搜索,我就会直接写一个粗暴的 [DFS](/search/dfs) :
我不会动态规划,只会搜索,我就会直接写一个粗暴的 [DFS](../search/dfs.md) :

-   注:为了方便食用,本文中所有代码省略头文件

@@ -201,7 +197,7 @@ int main() {

### 方法 II

1.  写出这道题的暴搜程序(最好是 [dfs](/search/dfs) )
1.  写出这道题的暴搜程序(最好是 [dfs](../search/dfs.md) )
2.  将这个 dfs 改成 "无需外部变量" 的 dfs
3.  添加记忆化数组

+1 −1
Original line number Diff line number Diff line
@@ -2,7 +2,7 @@ author: TrisolarisHD, hsfzLZH1, greyqz, Ir1d, abc1763613206, tigerruanyifan

## 介绍

??? note " 例题[经典问题 - 多重背包](/dp/knapsack/#_3)"
??? note " 例题[经典问题 - 多重背包](../knapsack.md#_2)"
    题目大意:有 $n$ 种物品,每种物品有 $a_i$ 件,购买一件这种物品的费用为 $c_i$ ,价值为 $v_i$ 。有一个容量为 $t$ 的背包,现在让你找到最优的一种方案,使得装入背包的物品的总价值最大。

考虑常规的动规方式,定义 $f_{i,j}$ 为当前考虑到第 $i$ 个物品,背包容量为 $j$ 所能获得的最大价值。
+2 −2
Original line number Diff line number Diff line
学习状压 dp 之前,请确认你已经完成了 [动态规划初步](/dp) 部分内容的学习。
学习状压 dp 之前,请确认你已经完成了 [动态规划基础](./basic.md) 部分内容的学习。

(同时建议学习 [位运算](/math/bit) 部分的内容)
(同时建议学习 [位运算](../math/bit.md) 部分的内容)

## 状压 DP 简介

Loading