Loading docs/graph/scc.md +1 −1 Original line number Diff line number Diff line Loading @@ -100,7 +100,7 @@ void tarjan(int u) { Kosaraju 算法依靠两次简单的 DFS 实现。 第一次 DFS,选取任意顶点作为起点,遍历所有为访问过的顶点,并在回溯之前给顶点编号,也就是后序遍历。 第一次 DFS,选取任意顶点作为起点,遍历所有未访问过的顶点,并在回溯之前给顶点编号,也就是后序遍历。 第二次 DFS,对于反向后的图,以标号最大的顶点作为起点开始 DFS。这样遍历到的顶点集合就是一个强连通分量。对于所有未访问过的结点,选取标号最大的,重复上述过程。 Loading docs/intro/editor/vscode.md +1 −1 Original line number Diff line number Diff line Loading @@ -30,7 +30,7 @@ Code Runner 是一个可以一键运行代码的插件,在工程上一般用 ### 使用 C/C++ 插件编译并调试 ???+ warning 在配置前,请确保你已经安装了[MinGW-w64](https://mingw-w64.org/doku.php/download)或[Clang](https://releases.llvm.org/download.html),并已经将它们添加到了 `path` 中。 在配置前,请确保你已经安装了[MinGW-w64](https://mingw-w64.org/doku.php/download)或[Clang](https://releases.llvm.org/download.html),并已经将它们添加到了 `path` 中。请确保你没有使用 `Git Bash` ,而是使用 `cmd` 或者 `powershell` 作为集成终端。 #### 配置编译与调试 Loading docs/misc/simulated-annealing.md +18 −0 Original line number Diff line number Diff line Loading @@ -100,6 +100,24 @@ int main() { * * * ## 一些技巧 ### 分块模拟退火 有时函数的峰很多,模拟退火难以跑出最优解。 此时可以把整个值域分成几段,每段跑一遍模拟退火,然后再取最优解。 ### 卡时 有一个 `clock()` 函数,返回程序运行时间。 可以把主程序中的 `simulateAnneal();` 换成 `while ((double)clock()/CLOCKS_PER_SEC < MAX_TIME) simulateAnneal();` 。这样子就会一直跑模拟退火,直到用时即将超过时间限制。 这里的 `MAX_TIME` 是一个自定义的略小于时限的数。 * * * ## 习题 - [「BZOJ 3680」吊打 XXX](https://www.lydsy.com/JudgeOnline/problem.php?id=3680) Loading Loading
docs/graph/scc.md +1 −1 Original line number Diff line number Diff line Loading @@ -100,7 +100,7 @@ void tarjan(int u) { Kosaraju 算法依靠两次简单的 DFS 实现。 第一次 DFS,选取任意顶点作为起点,遍历所有为访问过的顶点,并在回溯之前给顶点编号,也就是后序遍历。 第一次 DFS,选取任意顶点作为起点,遍历所有未访问过的顶点,并在回溯之前给顶点编号,也就是后序遍历。 第二次 DFS,对于反向后的图,以标号最大的顶点作为起点开始 DFS。这样遍历到的顶点集合就是一个强连通分量。对于所有未访问过的结点,选取标号最大的,重复上述过程。 Loading
docs/intro/editor/vscode.md +1 −1 Original line number Diff line number Diff line Loading @@ -30,7 +30,7 @@ Code Runner 是一个可以一键运行代码的插件,在工程上一般用 ### 使用 C/C++ 插件编译并调试 ???+ warning 在配置前,请确保你已经安装了[MinGW-w64](https://mingw-w64.org/doku.php/download)或[Clang](https://releases.llvm.org/download.html),并已经将它们添加到了 `path` 中。 在配置前,请确保你已经安装了[MinGW-w64](https://mingw-w64.org/doku.php/download)或[Clang](https://releases.llvm.org/download.html),并已经将它们添加到了 `path` 中。请确保你没有使用 `Git Bash` ,而是使用 `cmd` 或者 `powershell` 作为集成终端。 #### 配置编译与调试 Loading
docs/misc/simulated-annealing.md +18 −0 Original line number Diff line number Diff line Loading @@ -100,6 +100,24 @@ int main() { * * * ## 一些技巧 ### 分块模拟退火 有时函数的峰很多,模拟退火难以跑出最优解。 此时可以把整个值域分成几段,每段跑一遍模拟退火,然后再取最优解。 ### 卡时 有一个 `clock()` 函数,返回程序运行时间。 可以把主程序中的 `simulateAnneal();` 换成 `while ((double)clock()/CLOCKS_PER_SEC < MAX_TIME) simulateAnneal();` 。这样子就会一直跑模拟退火,直到用时即将超过时间限制。 这里的 `MAX_TIME` 是一个自定义的略小于时限的数。 * * * ## 习题 - [「BZOJ 3680」吊打 XXX](https://www.lydsy.com/JudgeOnline/problem.php?id=3680) Loading