摘要: 很有趣的一道题,尝试使用滑动窗口的思想。 以 \(start\) 标记当前有效子段的起始位置,\(end\) 遍历序列作为子段终点。当 \(end\) 位置导致连续三个元素单调时,说明当前子段不符合要求,将起点更新为 \(end-1\);若未出现连续单调的三个元素,则更新最长有效子段的长度。记录的最 阅读全文
posted @ 2026-03-12 13:31 Python_enjoy 阅读(2) 评论(0) 推荐(0)
摘要: 比较模板的离散化 使用两个 map<int, vector<int>>: a[y]:存储所有纵坐标为 \(y\) 的点的横坐标列表 b[x]:存储所有横坐标为 \(x\) 的点的纵坐标列表 读入所有点后,对每个 vector 排序,以便二分查找。 定义函数 \(f(v, l, r)\),返回数组中值 阅读全文
posted @ 2026-03-12 13:00 Python_enjoy 阅读(2) 评论(0) 推荐(0)
摘要: 很明显,这道题是一道 BFS。 首先做操作转化:Riffle 操作下,前 \(n\) 张的位置 \(x\) 会变为 \(2x-1\),后 \(n\) 张的位置 \(x\) 会变为 \(2 (x-n)\);Scuffle 操作下,奇数位置 \(x\) 变为 \(x+1\),偶数位置 \(x\) 变为 阅读全文
posted @ 2026-03-12 12:59 Python_enjoy 阅读(1) 评论(0) 推荐(0)
摘要: 这题是非常好的题,适合用来巩固 STL 的运用。 我们使用一个 map 来记录有没有访问过这个格子,然后按照题意模拟。切记一个一个格子走。如果当前这个格子没访问过,就标记一下;如果访问过了,就给答案加一。最后输出答案即可。 设每次移动的最大距离为 \(k\),时间复杂度为 \(\Theta(km\l 阅读全文
posted @ 2026-03-12 12:57 Python_enjoy 阅读(4) 评论(0) 推荐(0)