12 2024 档案
摘要:洛谷题单 【数据结构2-1】二叉堆与树状数组 P1878 舞蹈课 优先队列+模拟 题目链接 每次要取出最小值,考虑用优先队列维护。维护出跳舞的两个人的 以及技术相差值。 然后每次取出队头元素,判断左右两边的是否可以构成新的舞伴加入优先队列即可。 注意:每个人只能和一个人组成舞伴,所以要
阅读全文
摘要:Kruskal 重构树学习笔记 参考博客 链接 性质 这里给定最小生成树 Kruskal 重构树 的性质,那么最大生成树 Kruskal 重构树 的性质可以同理得。 重构树是一棵恰有 n 个叶子节点的完满二叉树,每个非叶子节点都有两个儿子,共有 2n−1 个点。(初始图中的 n 个点是叶子,由于是棵
阅读全文
摘要:洛谷题单 算法2-3 字符串 KMP模板 使用前保证字符串下标从 开始。e.g. s="?"+s; template<class Type> struct KMP{ vector<int> init(Type s){ int n=(int)s.size()-1; vector<int>
阅读全文
摘要:可持久化Trie--区间异或最值问题 应用:在 时间复杂度解决 查询区间 内与数 异或的最大值。 插入操作:把 个整数插入 ,生成 个版本的可持久化树。 查询操作:利用前缀和与差分的思想,用两颗前缀
阅读全文
摘要:P3369 【模板】普通平衡树 题目链接 您需要动态地维护一个可重集合 ,并且提供以下操作: 向 中插入一个数 。 从 中删除一个数 (若有多个相同的数,应只删除一个)。 查询 中有多少个数比 小,并且将得到的答案加一。
阅读全文
摘要:洛谷题单 算法2-3 分治与倍增 P2345 [USACO04OPEN] MooFest G 树状数组 题目链接 思路: 让我们求所有两两之间 的值之和。 经典思路,考虑每个数对答案的贡献。对于每个数 ,会产生所有比 \(v
阅读全文