Record - Nov. 27st, 2020 - Exam. REC & SOL

cirnovsky /

Problem. 1 Junior - Thinking

Desc. & Link.

注意到值域乘范围刚好能过。

然后就存两个桶即可。。。(数组开小飞了半天才调出来。。。)

Problem. 2 Junior / Senior - Thinking

Desc. & Link.

考虑一次反转后对整个序列造成的影响。

每次操作相当于把整个序列分成了 2nq2^{n-q} 个块,我们只需要考虑块内和块外。

考虑一个块对其他块的情况。

嗯。

没有影响,完。

那么我们只需要考虑如何快速计算出每个块内的变化即可。

像归并排序一样考虑问题,把序列分成 nn 层(把二叉树画出来)。

要反转区间 [l,r][l,r] 就要翻转 [l,m],[m+1,r],m=l+r2[l,m],[m+1,r],m=\lfloor\frac{l+r}{2}\rfloor,以此类推。

然后就预处理出每一层顺序对逆序对即可。

Problem. 3 Junior / Senior - Thinking

首先否决往大了想。

我们首先可以通过背包算出所有能够组成的值。

然后不会了。