随笔分类 - 题解
摘要:传送门。 分析 两个字符大小关系不变,并且具有传递性,我们可以联想到拓扑排序来解决。 因此,我们就通过字符串的大小关系,推断出一些字符的大小关系,然后拓扑排序即可。 #include <bits/stdc++.h> #include <vector> #include <string> #inclu
阅读全文
摘要:传送门。 题意 有 , 两个人,有一个含 个字符的字符串。 始终取最右侧的字符, 可以取任意一个字符,问 所取的字符串能否胜过 ,以及 能取的最大字符串。 分析 首先,我们 肯定会选择当前的最小的字符,
阅读全文
摘要:传送门。 题意 一个 的矩形,有从四周往内望去的第一个位置的距离,问是否存在一个矩形满足我们的观察。 分析 先说说我这个蒟蒻想出来的巨麻烦的方法。 首先先判断最简单的矛盾,就是左右穿插,上下穿插,这是第一步。 //-1 变成 n for(int i=1; i<=n; ++i
阅读全文
摘要:水道简单题的题解。 传送门。 分析 首先从数据范围出发 ,并且提问方式 可以发现,这就是一道数位 dp 的题目。 接着看数位 dp 的满足条件,和一定,那就更加确信是一道数位 dp 了。 至于第二问,我们可
阅读全文
摘要:传送门。 题意 应该是显然的. 分析 首先,观察数据范围: ,也就是说,时间复杂度应当在 左右。 其次,观察我们取球的顺序,是只能从左或右取,因此,我们每次留下的必然是连续的一段。 所以,我们显然可以采用区间 DP 来解决这道题。 确定状态:\
阅读全文
摘要:传送门。 题意 一个含未知字符的括号序列,一个括号序列的权值是这个括号序列的最大深度。问所有可能的括号序列的权值和为多少。 分析 我们寻找一下深度的快速计算方式。 可以发现两个巧妙的性质。 以某一个位置分割,左边的左括号数量和右边的右括号数量的较小值就是这个位置的最大延伸深度。 由于我们的全局最大深
阅读全文
摘要:传送门。 题意 有 个物品, 个背包。第 个物品的价值是 ,第 个背包可以装 个物品,但会消耗 的价值。 背包不能重复买,问最多可以获得多少价值。 分析 首先一个简单的贪心,我们在购买背包后塞入物品,一定时从
阅读全文
摘要:传送门。 题意 有两个长度为 的数列 , 。可以对 数组进行若干次操作,每次可以使 到 中的所有数变成期间的最大值,求最多能使多少个数满足要求。 分析 显然,要使我们的某一个 变成 ,至少
阅读全文
摘要:传送门。 题意 有一棵树,可以断掉 条边,会形成三个连通块,求三个连通块中大小最大减最小的最小值。 分析 我们观察两条边之间的关系,分类考虑: 两条边成祖孙关系。 两条边没有祖孙关系。 首先,我们肯定我们的大方向,固一动一(说起来为什么想到了数学题),先固定一条边,再在其他边中取得最适合
阅读全文
摘要:洛谷。 题面 初始状态为全是 ,将某一为变化的前提是当前节点的前缀(不包括当前节点)是 串的一个后缀,每次变化需要 的代价。问最后要使所有都为 的最小代价。 分析 很有意思的一道题,感觉玩起来跟喵了个喵一样上头。 首先,我们肯定是要先让 这个
阅读全文
摘要:洛谷。 题意 应该好理解的。 分析 我们的所有雪球在同一时间之间的距离都是相同的,因此一段雪,要么是它左侧的第一个所取,要么右侧第一个所取,要么不被取,并且,我们每一个雪球所占有的雪是连续的一段。 我们令 表示第 步前所能走的最左点, 表示第 步
阅读全文
摘要:洛谷。 题意 显然。 分析 首先考虑到分治,那么问题就在于如何维护经过某个结点的方案数。 利用从中间结点向两端的前缀后缀最大值,接下来我们对左端点的每一个结点考虑连向右侧的方案数。 考虑分类讨论,令左端点为 ,右端点为 。 假如 ,那么我们整个区间的最
阅读全文
摘要:洛谷。 题意 应该显然,注意最多只能翻转一条边,并且可以不翻转。 分析 首先观察数据范围 , ,可以发现我们的 和 并不是同级的,因此,在众多的最短路算法中,我们应当选择不加堆优化的 di
阅读全文
摘要:传送门。 前置知识 区间 dp。 题意 一个周长为 的圆,在初始点的顺时针方向依次排列着 物品,第 个物品在顺时针 米处,可以在 前收集到这个物品。 此时,从初始点出发,时间为 ,允许顺时针或逆时针移动,问最多可以收集到多
阅读全文
摘要:好久没写题解,水一篇。 题意 题意显然。 分析 看到这道题,我们就应该进行一个小贪心,对于最左边某一字符,直到最右边的这一字符,我们不会在中间删除同样的字符,不然则可以保留这一字符,将两边往内缩。 也就是说,我们确定了最左边的 J 后,那么留下最后一个 J 必然是当前这个 J 的后面的第 \(K-1
阅读全文
摘要:洛谷。 题意 有一棵 个结点的树,初始每一条边的长度都为 。有一种操作,会使某一条边的长度增加 。给定 次询问,每次给出询问 ,问正好操作 次后,最短树直径。(询问之间独立)。 对于 的数据,\(N\le 3
阅读全文
摘要:来自 OJ 的一道题(疑似 CF)。 题意 一棵边权都为 的数,初始根为 号节点,有 次操作: 0 u 将根换成 。 1 u v 询问 到 路径上所有节点的深度和。 2 u 询问以 为根的子树的所有节点深度和。 根节点深度为 。 分析 首先
阅读全文
摘要:传送门。 题意 显然。 分析 我们首先需要观察的就是我们的数据范围: , , 。非常优秀的一个数据范围,我们马上可以筛选我们的算法,主体肯定有一个类倍增的算法加速转移,而转移有极大可能是通过状压来解决。 首先可以想到这样一个状态: 表
阅读全文
摘要:传送门。 题意 显然。 分析 先分析我们的询问。 对于第一个问题,我们可以枚举起点,计算出小 A 的路程总数,小 B 的路程总数,将比值比较即可求到答案、 对于第二个问题,就是某个起点下,最长为 的小 A 路程总数,小 B 的路程总数。 因此,我们其实需要的操作只有一个:在某个起点,长度为
阅读全文