CF1882

A

贪心选尽量小的。

code\texttt{code}

B

竟然写了整整九分钟。。
枚举哪一位没有被覆盖,把能选的集合都选进来即可。

code\texttt{code}

C

观察到从第三个开始必然可以把大于0的都加,小于0的都不加,而前两个中要么加1,2可加可不加,要么二者都不加。

code\texttt{code}

D

考虑定根的情况下,必然先将整个子树换成一样,再在子树的根上操作,因此假定1为根,先处理每个子树的答案,再递归传入子树之外的答案,计算答案即可。

code\texttt{code}

E1

考虑一个序列。若当前已有子串 1~i 则可以每次换值 i 后面的位置,再换值 i+1 的位置,这样得到了子串 1~i+1。
两个序列,则先分别操作完,差的部分不断操作 1,n 或 1,m 补齐。若已排好序直接输出,否则有一个没排好。
我们又观察到长度为 n 的序列在 1 位置操作 n 次可以变回原样,因此只要 n,m 中存在一个奇数便可以调整,否则无解。

code\texttt{code}


CF1882
https://cyb1010.github.io/2023/09/26/contest/CF1882/
作者
cyb1010
发布于
2023年9月26日
许可协议