終於 get 到了子集卷積的正確姿勢,以前竟然都是用異或卷積寫的.
眾所周知,異或卷積由於涉及到乘法所以會比較慢,那我們用或卷積就好了!
code:
#include #define n (1<<21)#define ll long long
#define mod 1000000009
#define lowbit(x) ((x)&(-(x)))
#define setio(s) freopen(s".in","r",stdin)
using namespace std;
int n,inv2,lim;
int f[n],g[n],a[21][n],b[21][n],c[21][n],cnt[n];
int qpow(int x,int y)
int inv(int x)
void fwt(int *a)
void print(int x)
int main()
}
for(int i=0;i<=n;++i) ifwt(c[i]);
for(int i=0;ireturn 0;
}
loj 161 子集卷積
求不相交集合並卷積 sol 集合並卷積?看我 fwt!交一發,10 以上的全 t 了 rep s,0,maxstate rep i,0,n rep j,0,n i h i j s inc h i j s mul f i s g j s 把它改成 rep i,0,n rep j,0,n i rep s...
loj2340 FWT 子集卷積 州區劃分
description 傳送門 題解 看懂題需要一會 樸素的dp就可以列出乙個方程 f m ask 1r i p j k mask f j r k p f mask frac sum f j r k p f mask r i p1 j k mas k f j r k p其中r i r i r i 表...
luogu P6097 子集卷積 FST FWT
link 子集卷積 學了1h多 終於看懂是怎麼回事了 題解寫的不太清楚 翻了好幾篇部落格才懂 乙個需要用到的性質 二進位制位為1個數是i的二進位制數s 任意兩個沒有子集關係。挺顯然。而fst就是利用這個性質靠fwt做的。直接說做法 定義 f 表示 s 為i狀態為s的值.對於另乙個g陣列也同時定義。設...