Posts
https://leetcode.com/problems/count-non-decreasing-subarrays-after-k-operations/description/ 题目大意 给出 $n \ (n \le 10^5)$ 长的数组 $a$,其中 $1 \le a_i \le 10^9$,给出数字 $k \ (1 \le k \le 10^9)$。问有多少子数组,可以通过不超过 $k$ 次给单个位置 $+1$ 的操作,使得该子数组单调不减。 简要题解 容易发现,对于区间
https://codeforces.com/contest/1202/problem/B 题目大意 给出一个 $0 \sim 9$ 字符组成的序列 $S \ (1 \le |S| \le 2 \times 10^6)$ 且 $S$ 总以 $0$ 开始,这个序列是由 $x, y \ (0 \le x, y \le 9)$ 由以下规则生成出来的。 最初数字 $a$ 为 $0$。输出这个数 随机的从 $x, y$ 中选出一个数加到 $a$ 上并输出 $a$ 的个位
https://codeforces.com/contest/1202/problem/D 题目大意 构造一个包含 $1, 3, 7$ 的字符串 $S \ (|S| \le 10^5)$ 使得其中 $1337$ 子序列的个数为 $n \ (1 \le n \le 10^9)$ 个。 简要题解 观察: 如果 $n$ 更小,我们可以直接 $133$ 然后加上 $n$ 个 $7$。或者 $1$ 是同理的。 如果用 $111333777$ 这样的结构,那么结果是 $n_1 n7 C(n3,
https://codeforces.com/contest/1202/problem/C 题目大意 给出一个 $WSAD$ 操作序列 $S \ (|S| \le 2 \times 10^5)$,其中 $W$ 为 $x = x - 1$ $A$ 为 $y = y - 1$ $S$ 为 $x = x + 1$ $D$ 为 $y = y + 1$ 可以在任意位置加入最多一个字符,使得机器人运行这个序列而不移出边界所需的矩形框面积最小
https://codeforces.com/contest/1913/problem/C 题目大意 给出 $m \ (m \le 10^5)$ 次操作,每次操作为之下两种之一: 给出 $x \ (0 \le x \le 29)$ 将 $2 ^ x$ 加入可重集。 给出 $y \ (0 \le x \le 10^9)$,问是否可以选出一些可重集中的元素使其和为 $y$。 简要题解 因为 $x$ 很小所以数组 $cnt$
https://codeforces.com/contest/1913/problem/D 题目大意 给出一个 $n \ (1 \le n \le 3 \times 10^5)$ 排列 $p$。可以做如下操作任意次: 选出一个区间 $[l, r]$ 将其中除了最小元素以外的元素全部删掉。 问结果数组共有多少种。结果对 $998244353$ 取模。 简要题解 观察: 注意到 $1$ 永远删不掉。 考虑 $2$
https://codeforces.com/contest/1251/problem/A 题目大意 给出一个小写字母组成的字符串 $S \ (|S| \le 500)$。这是一个测试键盘的打字产生的序列,当一个字母对应的键是坏的时,会连续插入两个对应的字符。问从测试序列能推出那些字符确定是好的,字典序输出。 简要
https://codeforces.com/contest/1202/problem/A 题目大意 给出两个代表数字的二进制串 $A$ 和 $B$,没有前导零且 $|A|, |B| \le 10^5$。规定 $f(X)$ 为串 $X$ 对应的数字的值,有 $1 \le f(B) \le f(A)$。问取正整数 $k$,使得 $f(A) + f(B) \dot 2 ^ k$ 对应数字字符串的逆序字典序最小。问这
https://codeforces.com/contest/1251/problem/B 题目大意 给出 $n \ (\le 50)$ 个 $01$ 串,每个串 $s_i \ (|s_i| \le 50)$。可以任意交换任意两个串之间的一对字符,问最多能组成多少个回文串。 简要题解 我们最多可以得到 $n$ 个回文,我们尝试尽量达成这件事。 考虑所有串总长 $s = \sum s_i$ 的
https://codeforces.com/contest/1251/problem/C 题目大意 给出一个数字字符组成的字符串 $S \ (|S| \le 3 \times 10 ^ 5)$,允许任意次交换相邻的奇偶性不同的字符,问最后的得出的可以包含前导零的最小数字是多少。 简要题解 这题挺典,首先同种奇偶性的字符的相对关系是无法
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/911/problem/B 题目大意 给出 $n, a, b \ (1 \le a, b \le 100, 2 \le n \le a + b)$。 要把 $a$ 块某种蛋糕和 $b$ 块另一种蛋糕分给 $n$ 个人。所有蛋糕必须都分出,而每个人只能收到某一种蛋糕,问收到最少块数的最大值是多少。 简要题解 因为 $a, b$ 都很小,
https://codeforces.com/contest/911/problem/C 题目大意 给出 $k_1, k_2, k_3 \ (1 \le k_i \le 1500)$,问是否可以选出一组整数 $x_1, x_2, x_3$ 使得对于任意 $x \ge \max(x_1, x_2, x_3)$ 有整数 $i, j$ 使得 $k_i * j + x_i$ 成立。 简要题解 这题乍一想只要 $k_i$ 都比较大,肯定是无解,但要枚举并证明小的数只有那么多
https://codeforces.com/contest/911/problem/D 题目大意 给出 $n \ (\le 1500)$ 的排列 $a_i$。 给出 $m \ (\le 2 \times 10^5)$ 次询问,每次询问将区间 $[l, r]$ 左右翻转,并对之后的询问生效。每次操作之后问整个序列的逆序数是奇数还是偶数。 简要题解 其实答案是奇偶已经很大程度上提示了
https://codeforces.com/contest/628/problem/B 题目大意 给出一个由 $0 \sim 9$ 字符组成的字符串 $S \ (|S| \le 3 \times 10^5)$。问其有多少个子串对应的数字可以被 $4$ 整除(允许前导零)。 简要题解 分为两种情况 $1$ 位,$2$ 位及以上。对于第二种情况只需要判断最后两位能被
https://codeforces.com/contest/628/problem/D 题目大意 给出 $m \ (1 \le m \le 2000)$ 和数字 $d \ (0 \le d \le 9)$,给出两个字符串表示的没有前导零的大整数 $a, b \ (1 \le a \le b \le 10^2000)$。 问在区间 $[a, b]$ 中有多少数字 $x$ 符合能被 $m$ 整除,且从高向低数的偶数位($1-
https://codeforces.com/contest/797/problem/D 题目大意 给出一棵 $n \ (\le 10^5)$ 的二叉树。依次给出每个点上的权值 $v \ (0 \le v \le 10^9)$ 和其左右儿子的下标 $l, r$ 如果不存在则为 $-1$。问对于每一个树上存在的值,如果运行如下伪码,会有多少个点返回 $false$。重复数
https://codeforces.com/contest/797/problem/E 题目大意 给出 $n \ (\le 10^5)$ 长的数组 $a \ (1 \le a_i \le n)$。 给出 $q$ 个询问。每个询问给出 $p \ (1 \le p \le n)$ 和 $k \ (1 \le k \le n)$。问要对 $p$ 执行多少次 $p = p + a[p] + k$ 才能使 $p > n$。 简要题解 对于固定的 $k$ 这是一道动态规划题目
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)$,保证其有和为奇数的子序列,问和为奇数的子序列最大是多少。 简要题解 显然我们要尽量选所有的正数让和尽量大,但这时如果和是偶数,那我们就需要减掉最