我的卷积大概是这样写的:
for(int i=0;i<=n;i++) for(int j=0;j<(1<<n);j++)
for(int k=0;k<=i;k++) add(c[i][j],1ll*a[k][j]*b[i-k][j]%mod);
然后就被卡常了(悲)
但是如果你这样写:
for(int i=0;i<=n;i++) for(int j=0;j<=i;j++)
for(int k=0;k<(1<<n);k++) add(c[i][k],1ll*a[j][k]*b[i-j][k]%mod);
你就会发现他跑得飞快(
可能对 cache 友好一点?