2021 EC Final 2020 题解
A
数abcdcd的方案数
考虑枚举c的下标,枚举字母d
然后推一下式子用一些前缀和后缀和之类的加速计算。
即可做到\(O(n*62)\)
本题比较卡常
B
考虑一个子矩形会保持多久才消失
不难发现,这取决于它中的最小的那个数字
因此我们可以考虑统计矩形\(min=k\)的矩形个数
这个可以通过枚举上下边界+统计区间\(min=k\)的区间个数的算法来实现
具体来说就是单调栈搞一下控制区间。
然后就可以做到\(O(n^3)\)
最后用差分来统计一下答案即可。
C
题意大概就是给你一个随机数生成器,让你去计算种子
显然我们可以倒推得到每次生成的随机数对\(i\)取模的结果
除此之外
xor-shift本质上就是对\(64\)个向量进行一个线性变换
我们可以通过这个来得到每次生成的随机数对应的\(64\)个向量的表示
然后对于\(x=a \ (mod \ i)\)我们可以把改方程转化为\(x=b \ (mod \ 2^k)\)
然后就可以总共可以列O(n)级别个方程
解一下就可以了。
需要暴力枚举自由元来验证方程。
D
E
F
G
数据结构题
H
I
J
K
打牌题