摘要: 传送门。有这样一个结论,由 \(x\) 得到的反转区间 \([a,b]\) 的对称轴就是 \(x\) 所在的题给区间 \([l,r]\) 的对称轴,且 \([a,b]\subset [l,r]\)。 这个结论有什么用?如果没有这个结论,我们离线 \(q\) 次询问得到的是一系列散乱的反转区间。因为反 阅读全文
posted @ 2023-09-27 08:44 XYukari 阅读(111) 评论(0) 推荐(0)
摘要: 传送门。有这样一个结论:一个后缀中\([i+1,n]\) 中所有的正数都可以被取到,所以维护一个正数后缀和 \(s_i\),枚举每个位置 \(i\),如果 \(i\) 为奇数,答案对 \(a_i+s_{i+1}\) 取 \(\max\),否则对 \(s_{i+1}\) 取 \(\max\)。 下面证 阅读全文
posted @ 2023-09-26 13:34 XYukari 阅读(54) 评论(0) 推荐(0)
摘要: 异或和按位处理的典型例题。要求所有子区间异或和乘区间长度的总和,朴素的方法是 \(O(n^2)\) 地枚举区间,显然无法通过。 因为涉及异或和,而异或运算不进位,故自然地想到把 \(a_i\) 写成二进制形式,单独研究每一位的贡献,最后再合并。这是处理此类问题的一般思路。 1. 二进制拆分 比方说, 阅读全文
posted @ 2023-09-26 12:54 XYukari 阅读(212) 评论(0) 推荐(1)
摘要: 基环树上的“追及相遇”问题。 考虑什么情况下,Valeriu 能“无限期”地从 Marcel 手中逃离。参考样例 1,我们发现当 Valeriu 进入基环树的环中,他总能通过预判,逃往 Marcel 的反方向,避免被抓;而如果两者都在子树中,Marcel 就能步步紧逼,将 Valeriu 堵在叶子结 阅读全文
posted @ 2023-09-22 13:56 XYukari 阅读(33) 评论(0) 推荐(0)
摘要: 传送门。要求使得区间和小于 \(k\) 的子区间长度,显然可以二分处理。二分区间长度,枚举区间左端点,check 两项内容:区间是否合法(符合 \(h_i \mod h_{i+1}=0\) ),区间和是否小于 \(k\)。对于当前区间长度,只要有一个区间满足条件,即返回真。 区间和可以通过前缀和 \ 阅读全文
posted @ 2023-09-22 11:05 XYukari 阅读(53) 评论(0) 推荐(0)
摘要: 考查异或的基本性质。 对于操作2,用两个变量 \(X_0,X_1\) 记录 \(s_i=0/1\) 位置的异或和,在查询时直接输出即可。那么,在操作 1 如何更新 \(X_0,X_1\)? 如果操作 1 只改变一个数,比如将 \(s_i\) 从 \(0\) 改为 \(1\),那么我们只需将 \(a_ 阅读全文
posted @ 2023-09-21 21:21 XYukari 阅读(36) 评论(0) 推荐(0)
摘要: 传送门。答案要求统计“走过的边数”,这个不是很好统计,但是统计“哪些点不需要去”比较简单: 没有金币的子树不需要去; 删去 1 之后的叶子结点不需要去; 删去 1,2 之后的叶子结点不需要去。 可以证明,其他的点都需要去到。 删去上述结点的依据是度数(都是叶子结点)和金币,自然地想到使用拓扑排序处理 阅读全文
posted @ 2023-09-21 20:09 XYukari 阅读(18) 评论(0) 推荐(0)
摘要: 传送门。博弈论问题基本思路是先确定“状态”,即先手必胜或者先手必败。这里定义“必胜/必败”为走到当前格子的人的结局(赛时因为搞混了走入的人和走出的人,导致浪费大量时间)。 不难发现,一个位置是“必胜”还是“必败”完全取决于它前面的位置——如果前面有(能合法走入的)“必胜位置”,则当前位置一定是“必败 阅读全文
posted @ 2023-08-31 19:26 XYukari 阅读(22) 评论(0) 推荐(0)
摘要: 传送门。给出如下图的 \(7\) 种俄罗斯方块各 \(a,b,c,d,e,f,g\) 块,可以旋转不能翻转,要求拼成宽度为 \(2\) 的长方形。输出能得到的最大长度的一半。 不难发现,第 \(3,6,7\) 种方块压根用不上,因为它们造成了长度为 \(1\) 的凹槽,而这些凹槽永远不可能被填平:要 阅读全文
posted @ 2023-08-26 15:55 XYukari 阅读(37) 评论(0) 推荐(0)
摘要: 一道考查预处理技巧的 dp。 观察式子 \(a\times L_0+L_1\),一个显然的想法是“定一求一”,即预处理求出对于每个 \(L_1\) 最大的 \(L_0\),然后对于每个 \(a\),枚举 \(L_1\),统计最大的 \(a\times L_0+L_1\)。这样,我们将问题转化为了:已 阅读全文
posted @ 2023-08-26 15:46 XYukari 阅读(33) 评论(0) 推荐(0)