
按位异或卷积(Bitwise XOR Convolution)
问题描述
给定两个长度为 2N 的整数序列
a0,a1,…,a2N−1 和 b0,b1,…,b2N−1,
计算它们的按位异或卷积序列 c0,c1,…,c2N−1,定义为:
$$c_k = \sum_{\substack{i,j \\ i \oplus j = k}} a_i \cdot b_j \bmod 998244353,$$
其中 i⊕j 表示按位异或运算。
约束条件
- 0≤N≤20
- 0≤ai,bi<998244353
输入格式
N
a0 a1 ⋯ a2N−1
b0 b1 ⋯ b2N−1
输出格式
c0 c1 ⋯ c2N−1
3
1 2 3 4 5 6 7 8
9 10 11 12 13 14 15 16
492 488 476 472 428 424 412 408