2022-01-10から1日間の記事一覧

xor 畳み込みの線形代数を使わない説明

xor 畳み込みについて、線形代数を使わない日本語資料が見つからなかったため xor 畳み込みの線形代数を使わない理解について解説します。 template<class T> void fwt(vector<T> &a){ ll n=a.size(); for(int i=1;i<n;i*=2){ for(int j=0;j<n;j++){ if((j&i)==0){ T x=a[j],y=a[i^j]; a[j]=x+y; a[i^j]=x-y; } } } } template<class T> vector<T> xorconv(vector<T> a,vector<T> b){ fwt…</t></t></t></n;i*=2){></t></class>