\(100+100+100+45\) pts.

总结:D 懒得开滚动数组遂 MLE 挂 \(55\) pts,警钟敲烂。

A

根据异或的性质,有 \(x \oplus x=0\)

故满足 \(i\oplus x=0\)\(i\) 一定为 \(x\)

于是题目就变成了简单模拟题。

注意到 \(10^3 \times 10^8>2^{31}-1\),所以要开 LL

B

下记 \(n=|a|,m=|b|\)

\(1 \le n,m\le 1000\),十有八九是 \(O(n^2)\) 做法。

操作 \(2\) 使得磁铁 \(a\) 本质为环,结合操作 \(1\),可以删除任意位置的字符。

于是乎,破环为链,以每个位置为起点进行判定,使用双指针可以做到 \(O(n^2)\)

C

发现所谓“推荐”是一个 topo 模型。

所以直接套 topo 模板就行做啦 OvO

D

\(dp_{i,j}\) 表示前 \(i\) 个位置,当前最大值为 \(j\) 的方案数。

枚举第 \(i\) 位放的 \(k\),如果 \(k<j\),从 \(dp_{i-1,j}\) 转移过来,否则如果 \(k=j\),从 \(dp_{i-1,l}(1\le l \le j)\) 转移过来。

最坏复杂度 \(O(5000^3)\),无法通过,用前缀和优化即可。