随笔分类 - 题解
摘要:题面 做法 先补一下ST表求LCA的做法。 欧拉序就是dfs遍历这颗树经过每个节点的顺序。 欧拉序有一个优美的性质,就是给定两个端点 ,则 之间深度最小值即是 的LCA。 我们 时需要统计 以及欧拉序
阅读全文
摘要:简要题意 给定一个整数 ,问把 表示成一些数的立方和的方案数,注意相同的数算一种方案。 解析 题中告诉我们,选的数小于 ,所以可以先打表将小于 的完全立方数存一下。 之后我们不妨将每个数字 视作一个重量为 的物品
阅读全文
摘要:简要题意 给定一个长度为 的序列,求区间两端数字均不与区间中其他数字相等(包括另一端)的区间数量,且长度不小于二。 解析 先考虑一下最好办的情况,显然就是所有人的年级都不相等。 比如 1 3 2 4 6 7 8,如何统计? 可以直接写结论,但我们不妨这样看:(1,2)显然只有一种,加上了
阅读全文
摘要:简要题意 给定一个 的 01 大矩阵,询问 个 的 01 矩阵是否在大矩阵中出现过。 解析 本题是二维哈希的板子。 二维哈希其实就是二维前缀和与哈希的结合 我们先思考一维哈希实现过程: 在一维哈希中,我们是将长度为 的
阅读全文
摘要:简要题意 个点, 条带权边的无向图,另外还有 条连接 和 的边 。 在保证每个点到 的最短距离不变的前提下,最多可以删掉 条边中的的几条。 解析 最暴力的想法即逐条断掉网道之后跑一遍最短路即可,但 也是 \
阅读全文
摘要:思路 由于雪球之间的相对位置是不会改变的,所以对于一个雪球,越过相邻的雪球的初始位置一定不会令其变大。 如果雪球的滚动范围没有交集,答案显然就是区间长度。但如果有了交集,我们必须判断哪个雪球先滚到,一个区间便分为了分属左右两雪球的两个区间,于是就要找出两边最后一次不交的那个断点。 由于断点具有单调性
阅读全文
摘要:思路 由于雪球之间的相对位置是不会改变的,所以对于一个雪球,越过相邻的雪球的初始位置一定不会令其变大。 如果雪球的滚动范围没有交集,答案显然就是区间长度。但如果有了交集,我们必须判断哪个雪球先滚到,一个区间便分为了分属左右两雪球的两个区间,于是就要找出两边最后一次不交的那个断点。 由于断点具有单调性
阅读全文
摘要:题意 给定一个 字符串 ,定义相邻字符均不同的字符串为好串,要求支持两种操作。 1 L R,将从 到 的区间取反。 2 L R,查询 从 到 的子串是否为好串。 分析 没有接触过这种题的建议去看一眼 P6492。 比
阅读全文
摘要:题意 给定一棵 个点的树,要求支持两种操作。 1 x d w,使所有和点 之间距离 的点乘以 并模一个给定的数 。 2 x,查询点 的值。 分析 本题的代码量其实不大,就我而言,难度主要在能想到如何利用 \(d\le40\
阅读全文
摘要:题意 给定一棵 个点的树,要求支持两种操作。 1 x d w,使所有和点 之间距离 的点乘以 并模一个给定的数 。 2 x,查询点 的值。 分析 本题的代码量其实不大,就我而言,难度主要在能想到如何利用 \(d\le40\
阅读全文
摘要:简要题意 给定一个森林,可以在树与树之间连边,不可成环,求最长链。 解析 对于一棵树而言,她本身的最长链自然就是她的直径。 贪心的想,把所有的树的直径全部连接起来就是最长的那一条链。 所以,对于每一棵树求出她的直径然后求和就好了。 特别注意,这题的长度是指节点的个数,因此比边数大 。 代码
阅读全文