摘要: 给定一张 \(n\) 个点的图,初始包含 \(m\) 条给定的边。 支持两种操作,共 \(q\) 次: 0 u v 删除在 \(u, v\) 之间的边。 1 u v w 在 \(u, v\) 之间添加一条长度为 \(w\) 的边。 保证任意时刻图中没有重边和自环。 在所有操作前和每次操作后,求出在图 阅读全文
posted @ 2021-09-16 12:06 syksykCCC 阅读(78) 评论(0) 推荐(0) 编辑
摘要: 对于一个长度为 \(n\) 的序列 \(a\) 做插入排序,即依次考虑 \(a_2, \cdots, a_n\) 每个元素: 如果 \(a_i \ge a_{i - 1}\),即前缀依然保持不下降,不做操作。 否则,找到最靠前的位置 \(p\),使得 \(a_i < a_p\),然后将 \(a_i\ 阅读全文
posted @ 2021-08-26 10:19 syksykCCC 阅读(179) 评论(0) 推荐(0) 编辑
摘要: UPD:修复了原来取值范围不严谨的问题。 把 \(a_i\) 和 \(\frac{a_i + a_{i + 1} - b_i}{2}\) 做个比较,发现前者小于等于后者的条件为 \(a_{i + 1} - a_{i} \ge b_i\)。 把 \(a_{i + 1}\) 和 \(\frac{a_i 阅读全文
posted @ 2021-06-26 16:00 syksykCCC 阅读(241) 评论(4) 推荐(1) 编辑
摘要: 参考了官方题解的做法。 第 3 个限制本质要求是什么? 或者说,什么样的树可以满足第 3 个限制? 叶向树 根向树 一棵根向树 + 一棵叶向树 + 一条边 拼起来的树 为第三种情况画了一幅直观的图: 用 \(f_i\) 表示 无标号、有根、边同向(即都为叶向或都为根向,但此时只算一种)、\(\tex 阅读全文
posted @ 2021-06-16 18:48 syksykCCC 阅读(105) 评论(0) 推荐(0) 编辑
摘要: #01 CF504E Misha and LCP on Tree ⭐⭐⭐ 给定一棵 $n$ 个节点的树,每个节点有一个小写字母。 有 $m$ 组询问,每组询问为树上 $a \to b$ 和 $c \to d$ 组成的字符串的最长公共前缀。 $n \le 3 \times 10^5$,$m \le 1 阅读全文
posted @ 2021-06-03 22:38 syksykCCC 阅读(492) 评论(0) 推荐(3) 编辑
摘要: C. Skyline Photo *2100 给定长度为 \(n\) 的数组 \(h, b\),现在将这个数组划分为连续的若干段,每一段的价值为 \(h\) 最小的那个位置对应的 \(b\),求出最大化的价值和。 \(1 \le n \le 3 \times 10^5\),\(1 \le h_i \ 阅读全文
posted @ 2021-06-03 22:14 syksykCCC 阅读(65) 评论(0) 推荐(0) 编辑
摘要: 将点按照 \(x\) 坐标的奇偶性,\(y\) 坐标的奇偶性分为 \(4\) 类,可以发现如下性质: 每一个不满足题意的平行四边形都包含了 \(4\) 类点恰好一个。 每一个不满足题意的平行四边形都可以表示为 \(\text{(odd, odd)} \to \text{(even, odd)} \t 阅读全文
posted @ 2021-05-25 22:46 syksykCCC 阅读(98) 评论(0) 推荐(0) 编辑
摘要: 用黑点表示这个志愿者没有来,白点表示这个志愿者来了。 定义 \(B(u, r) = \{ v \mid \text{dis}(u, v) \le r \}\),也就是距离 \(u\) 不超过 \(r\) 的结点集合。 首先,我们枚举 \(r\),计算有多少种方法满足 \(ans \ge r\)。 考 阅读全文
posted @ 2021-05-25 22:25 syksykCCC 阅读(67) 评论(0) 推荐(0) 编辑
摘要: 因为每次是找到满足 \(a_u < a_v\) 的最小的二元组 \((a_u, a_v)\) 进行交换,所以这整个过程可以拆分为 \(n\) 个部分,第 \(i\) 个部分是将标签 \(i\) 一路向下转到尽头。 性质 1:整个操作过程是 \(a\) 从这棵树的 DFS 序变为 Exit 序的过程( 阅读全文
posted @ 2021-05-25 22:24 syksykCCC 阅读(49) 评论(0) 推荐(0) 编辑
摘要: 可以发现,无论原本平面上的点是长成啥样、原本排列是长成啥样,我们都可以构造出一种方案,如下。 分析平面上的点的位置显然比分析排列要复杂得多,所以我们不妨从排列入手,做这么两件事: 1. 所有 $a_i = i$ 的点都可以被忽略掉(显然)。2. 把 $i \to a_i$ 连边,排列会被划分为若干个 阅读全文
posted @ 2021-05-09 20:52 syksykCCC 阅读(121) 评论(0) 推荐(0) 编辑