摘要:
题意 给定一个序列,静态区间查询区间的长度为 \(1 \to 10\) 的极长值域连续段个数。 Sol 考虑离线下来跑扫描线。枚举右端点,维护每个左端点的答案。 不难想到,\(i\) 对 \(lst[i]\) 是没有贡献的,考虑右端点为 \(i - 1\),若此时的 \(l \le lst[i]\) 阅读全文
摘要:
题意 给定 \(n\) 个小于 \(2 ^ k\) 的数。 可以任意让若干数 \(xor\) \(2 ^ k - 1\)。 问使得最终区间 \(xor\) 不为 \(0\) 的最大个数。 Sol 考虑前缀异或和。 记异或和的数组为 \(s\)。 现在一个区间的贡献变为 \(s_r \oplus s_ 阅读全文
摘要:
题意 \(A\), \(B\) 两人轮流在一张图上移动一个点。要求这次移动的边权必须大于上次的。 \(A\) 希望游戏进行的轮数多,\(B\) 希望游戏进行的轮数少。 对于每个 \(s = 1, 2, ..., n\) 作为起点,若双方都采用最优策略,游戏会进行多少轮。 Sol 考虑将所有边按照从大 阅读全文
摘要:
题意 给定长度为 \(n\) 的序列 \(S\)。 \(A\),\(B\) 两人轮流取连续 \(k\) 个数,保证 \(n \equiv 1\pmod k\)。 \(A\) 使最终数字更小,\(B\) 使最终数字更大。 问取到数的和。 Sol 直接考虑每次选哪些数,怎么选显然是不好做的。 不难发现 阅读全文
摘要:
题意 设 \(T\) 是由 \(26\) 小写英文字母排列得到的字符串。 \(T'\) 由 \(T\) 复制若干次得到。 给定字符串 \(S\) 为 \(T'\) 的子序列,求 \(T'\) 的最小复制次数。 保证出现的不同字母不超过 \(20\) 种 \(1 \le |S| \le 10^5\) 阅读全文
摘要:
题意 给定一棵树,每次操作将一个点染成黑色。 求询问的点到所有黑点的路径编号最小值。 ** 数据保证第一次为染色操作 ** Sol 注意到保证第一次为染色。 考虑钦定根节点为染色的点。 那么对于所有染色操作,暴力记录染色的点到根节点的路径上所有点的贡献。 每个点只会贡献一次,这部分是 \(O(n)\ 阅读全文
摘要:
题意 给定一个长度为 \(n\) 的数字串 \(s\) 和只包含 yo 的字符串 \(t\),yoimiya 会和 oimiya 玩 \(n\) 轮游戏,初始有一个数字串 \(x\) 为 \(0\),每次: 如果 \(t_i\) 是 y 则是 yoimiya 操作,如果是 o 则是 oimiya 操 阅读全文
摘要:
题意 给定 \(m\) 个限制为 \(l_i\) 到 \(r_i\) 的异或和为 \(s_i\)。 求序列可能的方案数。 Sol 看到异或可以考虑拆位,手玩一下发现本题拆位是没法做的。 看到区间限制,考虑做前缀异或和变成对于 \(l_i - 1\) 和 \(r_i\) 两个点做限制。 显然每个前缀异 阅读全文
摘要:
题意 给定 \(n\) 个整数,求这 \(n\) 个整数的异或最大值。 Sol 线性基模板题。 考虑维护一个线性基。 插入一个数时,从高位往低位枚举。遇到第一个基中不存在的位,就将该数加入基,否则异或下去。 询问最大值,考虑贪心,若当前 \(ans ^ p[i] > ans\) 则直接 \(ans 阅读全文
摘要:
题意 给定长为 \(n\) 的序列,\(q\) 次询问区间 \(l, r\) 的最短区间 \(l', r'\), 使得所有在 \([l, r]\) 中出现的数也在 \([l', r']\) 中出现,输出 \(r' - l' + 1\)。 \(n, q \le 2 \times 10 ^ 6\) So 阅读全文