CQOI 2018 题解

[CQOI2018]社交网络 矩阵树模板
[CQOI2018]解锁屏幕 状压DP模板
[CQOI2018]交错序列
x a y b = ( n − y ) a y b = ∑ i = 0 a ( n i ) n i ( − 1 ) a − i y a + b − i x^ay^b=(n-y)^ay^b=\sum_{i=0}^a\binom{n}{i}n^i(-1)^{a-i}y^{a+b-i} xayb=(ny)ayb=i=0a(in)ni(1)aiya+bi
现在需要求出所有交错序列的 y k y^k yk ,考虑 d p dp dp
f i , j , 0 / 1 f_{i,j,0/1} fi,j,0/1 表示到第 i 位,求出了所有交错序列1的个数的 j 次方,最后一位是 0/1 的值
f i , j , 0 = f i − 1 , j , 0 + f i − 1 , j , 1 f_{i,j,0}=f_{i-1,j,0}+f_{i-1,j,1} fi,j,0=fi1,j,0+fi1,j,1
f i , j , 1 = ∑ ( y + 1 ) j = ∑ ( j k ) y k = ∑ ( j k ) f i − 1 , k , 0 f_{i,j,1}=\sum (y+1)^j=\sum \binom{j}{k}y^k=\sum \binom{j}{k}f_{i-1, k, 0} fi,j,1=(y+1)j=(kj)yk=(kj)fi1,k,0
然后就可以矩阵乘了
[CQOI2018]异或序列
区间异或转成前缀后就是莫队的模板
[CQOI2018]九连环
稍微算一下发现 a n s = ⌊ 2 n + 1 3 ⌋ ans=\left \lfloor \frac{2^{n+1}}{3} \right \rfloor ans=32n+1,然后就是 F F T FFT FFT 的模板
[CQOI2018]破解D-H协议 B S G S BSGS BSGS 的模板

你可能感兴趣的:(省选,NOI题解)