A
0,1,0,1,1,0,1 卷积
n 次的结果,直接 NTT 快速幂。
O(nlogn)。
B
枚举
a,b,根据题意直接设计 DP
fi=fi−2,gi=fi−3+gi−3,矩阵快速幂优化。
O(logn)。
C
容斥,钦定
i 个数大于
m,容易插板法,贡献为
(−1)i(in)(n−1n−1+S−i(m+1))。
O(n+S)。
D
每个数互不相同,可以最后答案乘上
n!。设
fi,j,0/1 表示前
i 个数选了
j 个,最后一个的奇偶性,矩阵快速幂 NTT 优化。
O(mlogm)。
E
直接 DP,设
fi,j 表示
≤i 长度为
j 的方案数。
O(nmmin(n,m))。
F
设
fi,0/1,0/1 表示
i 个数,蓝色和黄色的奇偶性,矩阵快速幂。
O(logn)。
G
双指针,维护当前的背包。删除一个数就是加入一个数倒过来 DP。
O(nm)。
H
DP,有
fi,j=k=0∑j2j−kfi−1,k,f0,j=2j−1。卷积的形式直接快速幂。
O(nlognlogm)。
I
直接分治然后 NTT 合并选了几个数的答案。
O(nlog2n)。
J
fi=j=1∑mm1fi−aj,cdq 分治 NTT 转移。
O(nlog2n)。
K
容斥,有
f0=−1,fi=−j=0∑i−1(i−j)!fj,cdq 分治 NTT 转移。
O(nlog2n)。
L
容斥,
a 个二元环
b 个自环贡献为
(−1)a+b(2a)!b!n!(2a−1)!!,NTT 即可。
O(nlogn)。
M
设
fi=2(2i) 为不要求连通的方案数,有答案
gi=fi−j=0∑i−1(j−1i−1)gjfi−j,cdq 分治 NTT 转移。
O(nlog2n)。