本文章由 WyOJ Shojo 从洛谷专栏拉取,原发布时间为 2024-05-23 09:41:54
对 2300 以下或者我做出来的题目进行记录。
- Codeforces Round 889 (Div. 1)
A1:将最大整数 $5$ 次翻倍,然后把所有负数变成正数,然后前缀和。
特判全负,此时后缀和。
A2:注意负数变正数的最劣情况下,可能无法完成,但容易证明此时,倒过来(正变负),是可以完成的。
B:一旦长度确定,答案也就确定,考虑维护哪些长度可用。
看着挺难搞,考虑 bitset 维护长度可行性。
考虑 $1$ 到 $n$ 将 $a_i$ 加入答案,注意一个数 $a_i$ 能对长度造成贡献当且仅当已有长度大于等于 $i$,所以新开一个数组记录每个长度是否可行,然后原来的 dp 数组每枚举一个 $i$ 就把 $dp_i$ 设置为 0。
Div.1 赛时过 A1,A2,B 的 perf 在 2300~2500,然而 vp 被 B 卡死在了转移方程的设计,原因大概是因为脑子不清醒 + 对此类型 dp 的不熟练。 - Codeforces Round 880 (Div. 1)
A \*1700 ,用了 10min 切掉,做法是枚举第一个数,然后确定第二个数的范围,不断用 $k$ 减去范围大小直到为 $0$。
B 难度太大,没通过。
现场参赛 perf 在 2200~2300,主要是本场难度跨度太大,区分度太低。

鲁ICP备2025150228号