时间线
- 19:04-19:09 做 T1
- 19:09-19:40 做 T2
- 19:41-19:50 想 T3,然后放弃
- 19:50-20:20 做 T4
- 20:20-20:59 做 T3
- 20:59-21:20 想 T5,然而没想出来
得分
| 题号 | A | B | C | D | E | F |
|---|---|---|---|---|---|---|
| 得分 | 100 | 100 | 90 | 100 | 0 | 0 |
错因分析
C 袋鼠将军的神秘序列
知识点:构造,模拟
错因:清空数组时没有清空 vis[0]。
多测记得数组的所有用到的位置都要清空(检查 0,n 等特殊位置)。
E 袋鼠将军的魔法
知识点:位运算,线段树
错因:没有想到对字符进行状态压缩,转化为维护区间异或和问题。
不难发现,区间能重组为一个回文串,当且仅当区间内最多有 1 种字符出现了奇数次。考虑怎样维护某种字符在区间内出现次数的奇偶性。因为字符集很小,所以可以将字符状态压缩, 转化为
。这样,区间内最多有 1 种字符出现了奇数次就转化为了区间异或和二进制下最多有一位是 1。至于修改操作,可以看成循环左移
位,移位后超过了 26 位的部分补在低位。用线段树维护区间修改和区间异或和查询即可。

京公网安备 11010502036488号