上一页 1 ··· 4 5 6 7 8
摘要: 发现许多关于 \(vector\) 的文章没有具体化的模板,所以我来添加一个有具体模板的 \(vector\) 文章。 插入元素 \(vector\) 中的插入主要是利用 \(push\)_\(back\) 实现的。 for (int i = 1, a; i <= n; i ++ ) cin >> 阅读全文
posted @ 2022-02-26 19:05 Link-Cut-Y 阅读(83) 评论(0) 推荐(0) 编辑
摘要: 树形DP是动态规划中最难也最常考的内容。具有DP和图论相结合的特点。 但从本质上来说,树形DP只不过是一种线性DP,只是将它与搜索结合起来了而已。 树形DP的基本步骤 读图 树形DP的题目中,通常会给出一个树,因此我们首先把图读入并存储(建议用链式向前星QAQ $vector$好卡啊) 深搜 树形D 阅读全文
posted @ 2022-02-10 14:05 Link-Cut-Y 阅读(58) 评论(0) 推荐(0) 编辑
摘要: 为什么要用迭代加深 \(dfs\) 每次会选择搜索树的一个分支,不断深入,直到达到递归边界条件;但这种搜索策略带有一定的缺陷性: 如果搜索树的某一个分支中的节点个数特别多,但是答案并不在这棵子树里面,那么我们就需要花费很多的无用时间去搜索这棵子树。 如图: 在这张图中,假设我们的目标节点是标五角星的 阅读全文
posted @ 2022-02-04 17:23 Link-Cut-Y 阅读(80) 评论(0) 推荐(0) 编辑
摘要: 最近连续好几天都在复习动态规划,也算有点心得体会,再次略记一下 动态规划的思路来源 动态规划是近几年的常考题目,所以如果想要学好动规,就必须要活学活用。 做出动态规划一般分为以下几个步骤: 定状态: 状态是一个动规题的灵魂,状态的定义一般有一些常用方式,比如说:当前元素是否被用过?(可以用0/1来表 阅读全文
posted @ 2022-02-01 14:03 Link-Cut-Y 阅读(118) 评论(0) 推荐(0) 编辑
摘要: 各类函数 1. 定义 \(fhq-treap\) struct Tree { int s[2]; // 左右孩子,s[0]表示左孩子,s[1]表示右孩子 int v; // 节点权值 int size; // 以i为根的子树的大小(包括根自己) int dat; // 节点优先级 int rev; 阅读全文
posted @ 2022-01-31 18:51 Link-Cut-Y 阅读(53) 评论(0) 推荐(0) 编辑
上一页 1 ··· 4 5 6 7 8