摘要: ╭(′▽`)╯ 总之,我们都知道lca是啥,不需要任何基础也能想出来怎么用最暴力的方法求LCA,也就是深度深的点先跳到深度浅的点的同一深度,然后一起向上一步步跳。这样显然太慢了! 所以我们要用倍增,倍增比较屌,直接2^k速度往上跳,而且复杂度和树剖lca差不多,那么步骤分为两步 1.让两个点到同一深 阅读全文
posted @ 2019-10-04 19:24 dudujerry 阅读(204) 评论(0) 推荐(0) 编辑
摘要: 拓扑排序 首先要求图为DAG 算法:首先将度为1的节点加入队列每次取出队首点u,在图中删去和u相邻的边继续将度数为1的点加入队列 到了最后, 如果没有度数为1的点,则图不是DAG 通过拓扑排序可以给DAG中的节点编号,也可以用来判断DAG 由于DAG有严格的顺序,不存在从后向前连接的边,所以可以做d 阅读全文
posted @ 2019-10-04 15:01 dudujerry 阅读(187) 评论(0) 推荐(0) 编辑
摘要: 一、不定方程 要求逆元,首先要知道什么是不定方程。 已知a,b,c,求解x,y,形如ax + by = c 的方程就是不定方程。 不定方程有两种解的情况: 1.无解 2.存在且有无限的解 那么,如何判断解的情况呢? 这时候,只需要拿出gcd就可以了, 若gcd(a,b) | c,则方程存在解,为什么 阅读全文
posted @ 2019-10-04 08:44 dudujerry 阅读(843) 评论(0) 推荐(0) 编辑