贪心
https://codeforces.com/contest/1251/problem/D 题目大意 给出奇数 $n \ (< 2 \times 10^5)$ 个人的薪资范围,其中第 $i$ 个人的范围为 $[l_i, r_i] (1 \le l_i \le r_i \le 10^9)$,以及薪资和的上限 $\sum l_i \le s \le 2 \times 10^{14}$。问当所有人的薪资 $x_i$ 符合自己的范围,且和不超过 $s$ 时,中位数
…
https://codeforces.com/contest/797/problem/C 题目大意 给出小写字母构成的字符串 $A \ (|A| \le 10^5)$,和空串 $B, C$。每次操作可以做以下操作之一: 将 $A$ 开头的字符移动到 $B$ 结尾。 将 $B$ 结尾的字符移动到 $C$ 结尾 重复操作直到 $A, B$ 为空。问能得到字典序最小的 $C$ 是什
…
https://codeforces.com/contest/797/problem/B 题目大意 给出长度 $n \ (\le 10^5)$ 长的数组 $a \ (-10^4 \le a_i \le 10^4)$,保证其有和为奇数的子序列,问和为奇数的子序列最大是多少。 简要题解 显然我们要尽量选所有的正数让和尽量大,但这时如果和是偶数,那我们就需要减掉最
…
https://codeforces.com/contest/2005/problem/A 题目大意 使用 aeiou,构造 $n \ (\le 100)$ 的串,使得其回文子序列最少。(一样的回文下标不同要重复计算) 简要题解 容易发现,对于同一字母的所有组合,无论字母如何排布都会组成回文,那么需要不同字母组成的回文尽量
…
https://codeforces.com/contest/940/problem/B 题目大意 给定数字 $n, k, a, b (1 \le n, k, a, b \le 2 \times 10^9)$,使用两种操作将 $n$ 变为 $1$, 花费 $a$ 使 $n$ 减 $1$。 花费 $b$ 使 $n$ 变为 $n / k$ (仅在 $k | n$ 时可用)。 简要题解 显然贪心即可,对于每次先将 $n$ 减到 $k$ 的某个倍数
…
https://codeforces.com/contest/940/problem/C 题目大意 给出字符串 $S$ 以及长度 $k$, $(|S|,k \le 10^5)$。要求用 $S$ 相同的字符集,构造字典序最小的且字典序大于 $S$ 的,长度为 $k$ 的串 $T$ 。题目保证有解。 简要题解 注意到这里是字符串,和数字的比较大小是不同的。 对于 $k > n$
…
https://codeforces.com/contest/940/problem/D 题目大意 给出序列 $n(\le 10^5)$ 长的序列 $a$ 和 $b$。 $b_1 = b_2 = b_3 = b_4 = 0$。对于 $i \ge 5$ $b_i = 0$,如果 $a_{i - 4}, a_{i - 3}, a_{i - 2},a_{i - 1}, a_{i} > r$ 且 $b_{i - 4} = b_{i - 3} = b_{i - 2} = b_{i - 1} = 1$。 $b_i = 1$,如果 $a_{i - 4}, a_{i - 3}, a_{i - 2},a_{i - 1}, a_{i} < l$ 且
…
https://codeforces.com/contest/940/problem/E 题目大意 给出 $n \le 10 ^ 5$ 长的数组 $a (1 \le a_i \le 10 ^ 9)$ 和常数 $c \le 10^5$ ,可以将数组分为一些连续的子数组。对于每个子数组,可以将其最小的 $\lfloor \frac{len}{c} \rfloor$ 个元素的权值减去。问剩余权值的和的最小值是多少。 简要题解 重要观察:最终
…
https://codeforces.com/contest/954/problem/E 题目大意 给出 $N (\le 2 \times 10 ^ 5)$ 个水龙头的水量 $a_i (\le 10 ^ 6)$ 和温度 $t_i (\le 10 ^ 6)$,每个水龙头可以取 $0 \sim a_i$ 的实数单位水量,问可以混合出 $T (\le 10 ^ 6)$ 温度的水最多多少。 若每个龙头取 $c_i$ 单位水,则混合水的温度为 $\frac{\sum c_i t_i)}{\sum c_i}$ 简
…
https://codeforces.com/contest/1993/problem/D 题目大意 给出一个 $n \ (le 5 \cdot 10^5)$ 长的数组 $a$ 其中 $a_i \le 10^9$。给定一个 $k \ (\le 5 \cdot 10^5)$。 不断地从数组中删去一些长为 $k$ 的子数组(删除后把数组接起来),使得最后的数组长度 $\le k$。 问此时剩余元素的中位数
…
https://codeforces.com/contest/1997/problem/D 题目大意 给以棵 $1$ 为根的有根树,节点数 $n \ (2 \le n \le 2 \times 10^5)$。每个节点上有权重 $a_i \ (1 \le a_i \le 10^9)$。每次操作可以选择给节点 $i$ 的权值 $+1$ 给其子树中所有其他节点权值 $-1$。任意时刻结点权值不能为
…
https://codeforces.com/contest/1996/problem/F 题目大意 给定 $n \le 2 \cdot 10^5$ 的两个数组 $a$ 和 $b$。可以执行 $k \le 10^9$ 次操作,每次操作选择某个 $i$ 然后 $ans += a[i]$,之后 $a[i] = max(0, a[i] - b[i])$。问最大的 $ans$ 是多少。 简要题解 题目贪心的策略是显然的,只需要选当前最大
…
https://codeforces.com/problemset/problem/724/D 题目大意 给定一个字符串 $S$ 串长 $\le 10^5$ 给定 $m \le |S|$。选择一些下标,使得所有长度为 $m$ 的子串都至少包含一个备选的下标。找出一组符合规定的下标,使其字符任意重排之后字典序最小,输出这个最小字典序的串。 简要题
…
https://codeforces.com/contest/713/problem/C 题目大意 给定 $n \le 3000$ 的数组 $a$。每次操作可以使数组中的某个位置的值 $+1$ 或 $-1$。 问最少得操作次数使得数组严格单调递增。 简要题解 重要的 trick: $a_i < a_{i + 1} \iff a_i + 1 \le a_{i + 1} \iff a_i + 1 - i \le a_{i + 1} - i \iff a_i
…
https://codeforces.com/problemset/problem/1994/E 题目大意 给 $k$ 棵有根树,每棵大小为 $n_i$,根为 $1$,形态以每个非根点的父亲 $f_i$ 的形式给出。 一种操作可以去掉任意的子树并把子树的节点树“或”到答案 $ans$ 上。 求最大的 $ans$。 简要题解 这样的题一般的是考
…
E - Bomber 题目大意 给出一个 $H \times W$ 的矩阵,上面有 $M$ 个点,选出一行一列使得覆盖到的点最多。问最多是多少。 其中 $H,W,M <= 3 \times 10^5$ 简要题解 注意到一定会贪心的选某个数量最多的行和列。设其行列数量分别 $mx$,$my$,则答
…