convolution
也叫折积
for (int i = 0; i <= n; i++) { for (int j = 0; j <= n; j++) { c[i + j] += a[i] * b[j]; } }
for (int i = 0; i < n; i++) { for (int j = 0; j < n; j++) { c[i ^ j] += a[i] * b[j]; } }
for (int i = 0; i < n; i++) { for (int j = 0; j < n; j++) { c[i | j] += a[i] * b[j]; } }
for (int i = 0; i < n; i++) { for (int j = 0; j < n; j++) { c[i & j] += a[i] * b[j]; } }
for (int i = 0; i < n; i++) { for (int j = 0; j < n; j++) { c[(i * j) % n] += a[i] * b[j]; } }
for (int i = 1; i <= n; i++) { for (int j = 1; i * j <= n; j++) { c[i * j] += a[i] * b[j]; } }