随笔分类 - 笔记
摘要:前置:莫队,LCA(太简单了懒得写(bushi)) 1. 树 -> 链 用欧拉序将树转化成序列,然后我们可以发现: 若 , 的路径为 到 的区间中所有只出现一次的点构成的路径。 若 \(\text
阅读全文
摘要:废了 另类排序顺序 Eg. 菜肴制作 要求在满足拓扑序的条件下,小编号的尽可能靠前。 小编号靠前 = 大编号靠后 不妨倒序考虑,先将大编号的向前放,最后倒序输出。 那么由于要让原本在后的在前,相当于反转拓扑序,所以建反图,然后满足大编号向前,即字典序越大越好,所以将队列改成大根堆即可。 数量关系建图
阅读全文
摘要:顺序有点乱,后续会排一下,然后分板块整理 All 最短路算法的选择: : Floyd(一般是较难的图论建模) : dijkstra 尽量不用 SPFA。 神秘 IDEA: 一个带负权图,绝对最短路定义为,绝对值最小的最短路
阅读全文
摘要:字典序最小方案 处理方法 1 倒序 DP: 倒着 DP, 原先倒着推方案时最先保证的是最后一位的字典序最小,倒过来就是首先保证第一位的字典序最小。 Eg. 最短包含串(字典序最小版) 给定字符串 和 ,求最短的字符串 ,使得 与 均为 的子序列。 仅求长度
阅读全文
摘要:世界上怎么会有分块那么可爱的思想!!! 一、概念 分块,你可以说它是数据结构,也可以说是一种思想。 而数列分块呢,就是将一段序列分成许多块,分别维护每块的信息,来求出一段区间的信息(比如最大值,区间和等等)。 可以用下面的图片来理解: Emm,搞错了: 对于区间询问 + 修改的问题,我们就可以使用分
阅读全文
摘要:前言 连通性找一个好用的板子真的很难 定义 强联通分量 双连通分量 割点与桥 定义以后再写吧 板子 Tarjan int nt, root, tmp, top, col; int dfn[M], low[M], vis[M], bel[M]; //dfn[u]->u的dfs序 low[u]->在 u
阅读全文