随笔分类 - 题解
摘要:题面传送门 解决思路 搜索标签启发我们可以用 切掉这题。 用数组存储当前的状态,每次交换相邻的数得到新的状态,同时记录次数。当第二次找到目标状态时,就得到答案了。 考虑到可能多次得到相同答案但用的次数不同,不太好用标记剪枝(可能得不到答案),但由于本题数据较水,不优化也可以
阅读全文
摘要:题面传送门 解决思路 首先可以发现,一段长度为 的连续相同字母合并所需的最小代价为 (一个一个合并),构成了一个等差数列。 而当多段连续相同的字母组合在一起时,例如 $\text{aaaaacccy
阅读全文
摘要:题面传送门 解决思路 讲一下 时的思路。 首先想到,只要能将棋盘中红色或蓝色部分全部填成同一个数,那么剩下的就不会受限了(可行有两个,限制只有一个): 但考虑到交互库可能有点坑,比如第一个给了 ,你钦定了红色块全填 ,但后面他可能一直给 。这样的话,你只能
阅读全文
摘要:题面传送门 解决思路 本题数据范围较小,可以使用模拟退火算法(随机化)。 顾名思义,模拟退火就是一个类似于降温的过程。先设置一个较大的初温,每次随机改变状态,若使答案更优,则采取更优答案,否则根据其与当前最优答案的差值,一定概率保留这个较不优的答案。这时为了防止答案陷入局部最优的情况: 比如下图,陷
阅读全文
摘要:题面传送门 解决思路 题目中虽然说是无根树,但我们可以钦定这棵树的根为节点 ,方便构造,这是不 影响结果的。 以下记给定的三段长度为 。 先考虑无解的情况。 首先,给出的三个距离,任意两者之和必须大于等于第三者,否则显然无解。 其次,用到的边数不能 。 最后,两个节
阅读全文
摘要:题面传送门 解决思路: 首先考虑到,一个点最终的情况只有三种可能:不被染色,被行染色,被列染色。 若一个点同时被行、列染色多次,显示出的是最后一次被染色的结果。所以我们可以使用结构体,对每一行、每一列记录下其最后一次被染色的颜色和时间。因为同行或同列反复染只有最后一次有影响,所以后来的直接覆盖之前的
阅读全文
摘要:题面传送门 解决思路 本题是找最长路的图上问题,所以先考虑如何建图。 首先把每一个字母转化为数字,然后对于每一个点枚举四个方向,如果有下一个字母,就向那个点建一条边,可以用 存图比较方便。用数字标号,只需要判断 是否成
阅读全文
摘要:题面传送门 好题。 主要思路和另一位巨佬差不多,详细讲一下判断的部分。 解决思路: 首先考虑本题与拓扑排序有和关系。可以想到,某些棍子的先后移动顺序是有限制的。比如: 这里红色的必须比蓝色的先移动,因为它们在 轴的投影有重叠,蓝色在上,会被红色卡住。 所以,棍子两两之间可能存在限制关系,这就
阅读全文
摘要:题面传送门 解决思路: DP 与拓扑结合。 表示到 位置 的最大次数。 将 转成数字 ,方便存储。 考虑转移。这一部分其他题解讲的很详细了,也很好理解。对于二十六个字母( ): 若是当前节点,则 $f_{tmp,j}=
阅读全文
摘要:题面传送门 其实这题根本不用搜索,有耐心即可。 可以发现,在 范围内扫,可能合法的只有以下四种情况,其中蓝色代表示是 *,红色表示不能是 *,其中黄色五角星表示当前 的位置。 所以只要把 * 标记为 ,全图扫一遍,发现合法就给它变 ,看最后有没有 $1
阅读全文
摘要:题面传送门 解决思路 首先容易得知,两个字符串中 (或 ) 的个数为偶数时,一定有解。为奇数则一定无解。 其次考虑怎么交换。对照样例三: in: 8 babbaabb abababaa out: 3 2 6 1 3 7 8 发现,每一对交换的字符有共同点: 要不是串一都为 ,串二都
阅读全文
摘要:题面传送门 解决思路 首先,我们让 Megan 先走,因为他可以留下传送门。可以得知,不管怎么走,他到达终点所耗费的能量一定是 。 然后,Stanley 走时就可以利用传送门。考虑怎样布置传送门可以使 Stanley 走的路最短。这时只要分情况讨论即可。若 ,就会出现
阅读全文
摘要:题面传送门 本蒟蒻想练习一下并查集,所以是找并查集标签来这里的。写题解加深理解。 解决思路 自然,看到区间修改之类很容易想到线段树,~~但本蒟蒻线段树会写挂~~,所以这里就讲比较简单的并查集思路。 并查集的核心是 函数。 函数的目的是找到一个节点
阅读全文
摘要:题面传送门 解决思路 看到 的范围,我们可以想到二分答案。只要对于每一个二分出的答案进行 ,如果可行就往比它小的半边找,不可行就往比它大的半边找。 以下是 的过程(以不可行返回 为例): bool check(long long x)
阅读全文
摘要:题面传送门 题目描述 有 个数 请你从中至少选出一个数,使它们的乘积最大 解决思路 对于正数,对答案一定有贡献(正数越乘越大),所以输入正数时直接输出即可。 对于负数,如果负数的个数 是偶数,负负得正,可以全部输出。如果负数的个数 为奇数,那么就输出绝对值较大的
阅读全文