Loading docs/basic/divide-and-conquer.md +1 −3 Original line number Diff line number Diff line Loading @@ -183,9 +183,7 @@ LeetCode 有递归专题练习,[点这里去做题](https://leetcode.com/explo ### 递归优化 先来一道例题:[三连击](https://www.luogu.org/problemnew/show/P1618)。 这道题朴素的递归写法只能得到 25 分,因为递归次数太多,所以超时。 比较 naive 的递归实现可能递归次数太多,容易超时。 怎么优化呢?详见[搜索优化](/search/optimization)和[记忆化搜索](/dp/memo/)。 Loading docs/basic/expression.md +1 −1 Original line number Diff line number Diff line Loading @@ -86,6 +86,6 @@ int calc(const std::string &s) { // 计算转换好的后缀表达式 ## 习题 1. [表达式求值(NOIP2013)](https://www.luogu.org/problemnew/show/P1981) 1. [表达式求值(NOIP2013)](https://vijos.org/p/1849) 2. [后缀表达式](https://www.luogu.org/problemnew/show/P1449) 3. [Transform the Expression](https://www.spoj.com/problems/ONP/) docs/basic/greedy.md +1 −1 Original line number Diff line number Diff line Loading @@ -25,7 +25,7 @@ 有些题的排序方法非常显然,如 [Luogu P1209 [USACO1.3]修理牛棚 Barn Repair](https://www.luogu.org/problemnew/show/P1209) 就是将输入数组差分后排序模拟求值。 然而有些时候很难直接一下子看出排序方法,比如 [Luogu P1080 国王游戏](https://www.luogu.org/problemnew/show/P1080) 就很容易凭直觉而错误地以 $a$ 或 $b$ 为关键字排序,过样例之后提交就发现 WA 了 QAQ。一个~~众所周知的~~常见办法就是尝试交换数组相邻的两个元素来 **推导** 出正确的排序方法。我们假设这题输入的俩个数用一个结构体来保存 然而有些时候很难直接一下子看出排序方法,比如 [NOIP 2012 国王游戏](https://vijos.org/p/1779) 就很容易凭直觉而错误地以 $a$ 或 $b$ 为关键字排序,过样例之后提交就发现 WA 了 QAQ。一个~~众所周知的~~常见办法就是尝试交换数组相邻的两个元素来 **推导** 出正确的排序方法。我们假设这题输入的俩个数用一个结构体来保存 ```cpp struct { Loading docs/basic/prefix-sum.md +1 −3 Original line number Diff line number Diff line Loading @@ -114,11 +114,9 @@ int main() { 具体怎么搞?譬如使 $[l,r]$ 每个数加上一个 $k$ ,就是 $b_l \leftarrow b_l + k,b_{r + 1} \leftarrow b_{r + 1} - k$ 。 最后做一遍前缀和就好了。 ~~对于多维差分,自己手推一下就好了。(逃~~ ### 习题 - [P3368【模板】树状数组 2](https://www.luogu.org/problemnew/show/P3368)(需要掌握树状数组) - [树状数组 3 :区间修改,区间查询](https://loj.ac/problem/132) ## 树上差分 Loading docs/dp/interval.md +2 −2 Original line number Diff line number Diff line Loading @@ -46,8 +46,8 @@ for (len = 1; len <= n; len++) ## 几道练习题 [洛谷 P1063 能量项链](https://www.luogu.org/problemnew/show/P1063) [NOIP 2006 能量项链](https://vijos.org/p/1312) [洛谷 P1005 矩阵取数游戏](https://www.luogu.org/problemnew/show/P1005) [NOIP 2007 矩阵取数游戏](https://vijos.org/p/1378) [洛谷 P4767\[IOI2000\]邮局](https://www.luogu.org/problemnew/show/P4767) Loading
docs/basic/divide-and-conquer.md +1 −3 Original line number Diff line number Diff line Loading @@ -183,9 +183,7 @@ LeetCode 有递归专题练习,[点这里去做题](https://leetcode.com/explo ### 递归优化 先来一道例题:[三连击](https://www.luogu.org/problemnew/show/P1618)。 这道题朴素的递归写法只能得到 25 分,因为递归次数太多,所以超时。 比较 naive 的递归实现可能递归次数太多,容易超时。 怎么优化呢?详见[搜索优化](/search/optimization)和[记忆化搜索](/dp/memo/)。 Loading
docs/basic/expression.md +1 −1 Original line number Diff line number Diff line Loading @@ -86,6 +86,6 @@ int calc(const std::string &s) { // 计算转换好的后缀表达式 ## 习题 1. [表达式求值(NOIP2013)](https://www.luogu.org/problemnew/show/P1981) 1. [表达式求值(NOIP2013)](https://vijos.org/p/1849) 2. [后缀表达式](https://www.luogu.org/problemnew/show/P1449) 3. [Transform the Expression](https://www.spoj.com/problems/ONP/)
docs/basic/greedy.md +1 −1 Original line number Diff line number Diff line Loading @@ -25,7 +25,7 @@ 有些题的排序方法非常显然,如 [Luogu P1209 [USACO1.3]修理牛棚 Barn Repair](https://www.luogu.org/problemnew/show/P1209) 就是将输入数组差分后排序模拟求值。 然而有些时候很难直接一下子看出排序方法,比如 [Luogu P1080 国王游戏](https://www.luogu.org/problemnew/show/P1080) 就很容易凭直觉而错误地以 $a$ 或 $b$ 为关键字排序,过样例之后提交就发现 WA 了 QAQ。一个~~众所周知的~~常见办法就是尝试交换数组相邻的两个元素来 **推导** 出正确的排序方法。我们假设这题输入的俩个数用一个结构体来保存 然而有些时候很难直接一下子看出排序方法,比如 [NOIP 2012 国王游戏](https://vijos.org/p/1779) 就很容易凭直觉而错误地以 $a$ 或 $b$ 为关键字排序,过样例之后提交就发现 WA 了 QAQ。一个~~众所周知的~~常见办法就是尝试交换数组相邻的两个元素来 **推导** 出正确的排序方法。我们假设这题输入的俩个数用一个结构体来保存 ```cpp struct { Loading
docs/basic/prefix-sum.md +1 −3 Original line number Diff line number Diff line Loading @@ -114,11 +114,9 @@ int main() { 具体怎么搞?譬如使 $[l,r]$ 每个数加上一个 $k$ ,就是 $b_l \leftarrow b_l + k,b_{r + 1} \leftarrow b_{r + 1} - k$ 。 最后做一遍前缀和就好了。 ~~对于多维差分,自己手推一下就好了。(逃~~ ### 习题 - [P3368【模板】树状数组 2](https://www.luogu.org/problemnew/show/P3368)(需要掌握树状数组) - [树状数组 3 :区间修改,区间查询](https://loj.ac/problem/132) ## 树上差分 Loading
docs/dp/interval.md +2 −2 Original line number Diff line number Diff line Loading @@ -46,8 +46,8 @@ for (len = 1; len <= n; len++) ## 几道练习题 [洛谷 P1063 能量项链](https://www.luogu.org/problemnew/show/P1063) [NOIP 2006 能量项链](https://vijos.org/p/1312) [洛谷 P1005 矩阵取数游戏](https://www.luogu.org/problemnew/show/P1005) [NOIP 2007 矩阵取数游戏](https://vijos.org/p/1378) [洛谷 P4767\[IOI2000\]邮局](https://www.luogu.org/problemnew/show/P4767)