上一页 1 ··· 9 10 11 12 13
摘要: 前言 题目链接:洛谷。 题目分析 首先可以确定的是需要枚举断边,所以我们希望两次枚举之间能有些关联。不难想到类树形 DP 的套路,建 DFS 树,只不过这题除了讨论和父亲之间的边,还要考虑返租边。以下钦定以 \(1\) 为树根。 树边 先从简单的树边开始考虑。考虑不经过 \(u\) 和 \(u\) 阅读全文
posted @ 2024-04-01 18:05 XuYueming 阅读(101) 评论(0) 推荐(0)
摘要: 前言 题目链接:洛谷。 题意简述 给定一张无向图,每条边有个哨兵,初始在边的中间。你可以把某个结点旁边的哨兵全部吸引或远离这个结点。给出最后每个哨兵在边的哪一端,请构造出一种可能的操作方案或报告无解。多种情况输出任意解,你不需要最小化操作步数。 题目分析 发现一个哨兵和且仅和最后一次关联这条边的操作 阅读全文
posted @ 2024-03-31 22:25 XuYueming 阅读(73) 评论(0) 推荐(0)
摘要: UPDATE on 2024.5.10 删去左偏树代码中令人误解的 fa 数组。 前话 题目链接:洛谷。 貌似别人都是使用并查集维护的方法,然而由于排序、最短路等算法瓶颈,以下令 \(n\) 和 \(m\) 同阶,总的时间复杂度依然是 \(\Theta(n \log n)\) 的,那么并查集是否有点 阅读全文
posted @ 2024-03-19 16:28 XuYueming 阅读(105) 评论(0) 推荐(0)
摘要: 前言 题目链接:洛谷。 题目分析 其他人要么倍增,要么左偏树,那我就来讲讲朴实无华的 dfs 序加上线段树的做法。 首先发现题目中明确指出了作乘法的时候一定是乘上一个大于零的数,这是为什么呢?首先把可以占领当前城池的战斗力的不等式列出来: \[h_j \le \left\{ \begin{array 阅读全文
posted @ 2024-03-14 18:46 XuYueming 阅读(76) 评论(1) 推荐(1)
摘要: 前言 题目链接:洛谷。 题意简述 给定一棵树,求断掉一条边再连上一条边所得的新树直径最小值和最大值,以及相应方案(你可以不进行任何操作,即断掉并连上同一条边)。 题目分析 假设我们枚举断掉某一条边,得到了两棵树,并且知道它们的直径分别为 \(d_0, d_1\),那么如何连接一条边让新树的直径最大 阅读全文
posted @ 2024-03-14 18:45 XuYueming 阅读(35) 评论(0) 推荐(0)
摘要: 前言 题目链接:洛谷。 题目分析 显然,手模样例发现答案分为以下几个贡献: 所有圆外面的那个大平面,贡献为 \(1\)。 每个圆至少被分成一部分,贡献为 \(n\)。 如果有一个圆被“拦腰截断了”,即整条直径上都被更小的圆填满了,就额外对答案贡献加 \(1\),这也是我们所求部分。 暴力跳 set 阅读全文
posted @ 2024-02-22 21:25 XuYueming 阅读(41) 评论(0) 推荐(0)
摘要: UPDATE on 2024.4.25 改掉奇怪压行码风,并稍作排版。 前言 题目链接:洛谷。 题目分析 首先发现区间中的个数等于 \(\texttt{高度大于 x 的位置的个数} - \texttt{连续两个位置都是大于 x 的位置的个数}\)。具体令 \(H_i = \min(h_i, h_{i 阅读全文
posted @ 2024-02-15 18:18 XuYueming 阅读(194) 评论(0) 推荐(0)
上一页 1 ··· 9 10 11 12 13