摘要: 进制 题目大意: 给出一个数字串,q 次以下两种操作: 输入 1 x y,修改第 x 个字符为 y 输出 2 x y ,代表查询区间 [x,y] 子串所能表示的某进制的最小值,对 1e9+7 取模。 思路: 要得到最小值,显然进制的选择是区间最大值+1。 看操作是单点修改和区间查询,我们考虑用线段树 阅读全文
posted @ 2022-03-01 15:13 Nepenthe8 阅读(32) 评论(0) 推荐(0) 编辑
摘要: F - Skate 题目大意: 每次移动,沿着一个方向一直运动,直到遇到障碍物才停下,问从起点到终点的移动次数。 思路: 由于之前玩过类似的游戏,题意比较好理解。 考虑每个位置上我们有哪些选择,按照题意,我们只有上下左右四个方向,并且沿着这个方向需要碰到障碍物,否则就会出界,注意碰到障碍物就会停止, 阅读全文
posted @ 2022-03-01 14:31 Nepenthe8 阅读(123) 评论(0) 推荐(0) 编辑
摘要: 迷宫2 题目大意: 最小化修改的格子的数量,使得人物能从左上角走到右下角 思路: 在每一个位置上有改与不改两种选择,也就是 0 和 1 两种花费,要是花费最少,我们可以使用 01bfs 解决。 01bfs 本质上就是贪心的思想,运用双端队列,将花费为 0 的从队首加入,花费为 1 的从队尾加入,这样 阅读全文
posted @ 2022-03-01 14:07 Nepenthe8 阅读(40) 评论(0) 推荐(0) 编辑
摘要: 在 D - Sequence Query 题目中,我提交了以下 WA 代码。 #include <bits/stdc++.h> using namespace std; using ll = long long; int main() { ios::sync_with_stdio(false); c 阅读全文
posted @ 2022-02-27 17:07 Nepenthe8 阅读(49) 评论(0) 推荐(0) 编辑
摘要: E - Placing Rectangles 题目大意: 给你一个 \(X \times Y\) 的矩形,问你能不能塞入三个不重叠的面积分别大于等于 \(A, B, C\) 的矩形 思路: 首先能够想到贪心的思路,优先处理面积最大的矩形,再在剩余的区域内处理面积次大的矩形。但是这样就陷入了繁琐的分类 阅读全文
posted @ 2022-02-26 13:23 Nepenthe8 阅读(72) 评论(0) 推荐(0) 编辑
摘要: 题目链接 题目大意: 给定字符串 \(s\) 、\(L\) 、\(R\) ,求满足长度为 \([L, R]\) 且至少包含四类字符中的三种的子串数量。 思路: 当固定了区间左端点时,随着右端点向右移动对答案的贡献具有单调性。同样,固定右端点,向右移动左端点,对答案的贡献也有单调性。我们考虑使用尺取。 阅读全文
posted @ 2022-02-04 23:21 Nepenthe8 阅读(32) 评论(0) 推荐(0) 编辑
摘要: 题目大意: 给出一个字符串表示每局游戏的结果,每次询问格式为 \((l, r, s)\),询问若你初始有 \(s\) 分,按从左到右的顺序经历了 \([l, r]\) 这一子串的游戏结果后,最终分数是多少。 思路: 对于模 3 意义下相同的初始分数 \(s_1\),经历了 \([l_1, r_1]\ 阅读全文
posted @ 2022-01-31 15:02 Nepenthe8 阅读(37) 评论(0) 推荐(0) 编辑
摘要: 题目大意: 给出 \(n\) 个不同的点,定义两点间距离为:\(x\) 坐标差与 \(y\) 坐标差的最小值,求任意两点间距离的最大值。 思路: 典型的最大最小值问题,我们考虑二分答案。 问题则转化为如何判断是否存在两个点满足距离大于二分的 \(limit\) 。 注意式子: \[ min(\lef 阅读全文
posted @ 2022-01-16 16:54 Nepenthe8 阅读(68) 评论(0) 推荐(0) 编辑
摘要: Problem - C - Codeforces 题目大意: 给定一个完全图,每个队伍就是一个点,每场比赛就是一条无向边。现在每次可以消掉一个环,使得剩下的边最少。 思路: 有这样一个结论,将一个完全图分成若干个环逐个消去,所有节点出现在所有环上的总次数都相同。 举个例子,比如六阶完全图,可以拆成( 阅读全文
posted @ 2021-11-30 20:07 Nepenthe8 阅读(56) 评论(0) 推荐(0) 编辑
摘要: Constant Palindrome Sum 题目大意: 给出长度为$n$的数列$a_i$和$k$,保证$a_i \leq k$。将$a$中任意一个数$a_i$改成$[1, k]$中的一个数称为一次操作。问最少经过多少次操作后,$x = a_i+a_{n-i+1} (i \leq \frac{n} 阅读全文
posted @ 2021-08-18 23:02 Nepenthe8 阅读(30) 评论(0) 推荐(0) 编辑