摘要:
题意 给定一个排列,若 \(i, j\) 满足 \(j - i \ge k\) 且 \(|p_i - p_j| = 1\),则可以交换 \((p_i, p_j)\),你需要操作若干次,使得最终字典序最小。 你需要输出最终的序列。 \(n \le 5 \times 10 ^ 5\) Sol 套路地,转 阅读全文
摘要:
题意 有 \(n\) 个人,\(4\) 种牌。 第 \(i\) 个人有第 \(j\) 种牌 \(a_{i, j}\) 张。 你有第 \(j\) 种牌 \(b_j\) 张。 你需要把你手上的所有牌分给所有人,使得所有人牌的数量相同。 设一种分牌的方案的优美度为所有人最多的种类的牌数 \(x\),以及次 阅读全文
摘要:
题意 求: \[\sum_{i = 1} ^ {n} \sum_{j = i + 1} ^ {n} \dbinom{a_i + b_i + a_j + b_j}{a_i + a_j} \]对 \(10 ^ 9 + 7\) 取模。 \(n \le 2 \times 10 ^ 5, 1 \le a_i 阅读全文
摘要:
题意 你需要构造一个长度为 \(n\) 的字符串。 使得后缀数组为给定的序列 \(a\),\(\text{manacher}\) 的回文序列为 \(b\)。 Sol 注意到后缀数组实际上是一系列 \(\le\) 的限制,而 \(\text{manacher}\) 是一堆相等以及两个不相等的限制。 若 阅读全文
摘要:
题意 有长度为 \(n\) 的字符串 \(S\),与 \(a, b\) 两个序列。 满足 \(\sum a_i = n, \sum b_i = n\)。 若满足 \(S\) 的以下子段都为回文串: 最前面的 \(a_1\) 个字符,以及紧接着的 \(a_2\) 个字符... 最前面的 \(b_1\) 阅读全文
摘要:
题意 有 \(n\) 个旗子。 你需要将她们插在数轴上。 第 \(i\) 个旗子只能放在 \(x_i\) 或 \(y_i\) 处。 你需要求所有旗子的最小距离 \(d\) 的最大值。 Sol 二分个答案先。 考虑 \(\text{check}\),注意到这是个 \(\text{2-sat}\) 的经 阅读全文
摘要:
题意 有 \(n\) 个魔法少女,每个魔法少女的法力为 \(a_i\),她们要打败 \(n\) 个法力为 \(b_i\) 的怪兽! 你需要构造 \({c_n}\),使得对于给定的 \(m\) 组限制,满足:\(c_x \ge b_x \land c_y \ge b_y\) 或 \(c_y \ge b 阅读全文
摘要:
题意 现在有四种物品,分别有 \(n1, n2, n3, n4\) 个,有多少种排列物品的方案使得任意两个相邻物品的种类不同。 \(0 \le n1, n2 \le 500, 0 \le n3, n4 \le 5 \times 10 ^ 4\) Sol 注意到 \(n1\),\(n2\) 特别小。 阅读全文
摘要:
题意 给定数列 \(A, B, C\),每次操作,你可以花 \(1\) 的代价将 \(A_i\) 或 \(B_i\) 或 \(C_i\) 增加 \(1\)。 求使得三个数列每个元素排名相同的最小代价。 \(n \le 500\) Sol 很厉害的题目。 首先注意到这个最优方案只和前缀最大值有关,考虑 阅读全文
摘要:
题意 给定一个长度为 \(2 \times n\) 的数列 \(S\)。 称一个数列是好的,当且仅当数列中的数可以由每次删除相邻两个 不同 的数的操作删空。 求划分该数列为若干好的字串的方案数。 Sol 集中注意力。 首先显然长度为奇数的序列是没法做的。 若序列存在绝对众数,则该序列一定无法删除,否 阅读全文