原文:Fast Walsh-Hadamard Transform——快速沃尔什变换

模板题: 给定 n k 和两个序列 A ..n , B ..n ,求 C i sum j oplus k i A j B k 其中 oplus 是某一满足交换律的位运算,要求复杂度 O nlogn 。 快速沃尔什变换: 这是什么东西 能吃吗 有用吗 请参阅SDOI r d cut。 看到这个大家是不是立刻想到了快速傅里叶变换 C i sum j k i A j B k 我们来想想离散傅里叶变换的本 ...

2017-05-18 21:37 0 1490 推荐指数:

查看详情

Fast Walsh-Hadamard Transform——快速变换(二)

上次的博客有点模糊的说...我把思路和算法实现说一说吧... 思路 关于快速变换,为了方便起见,我们采用线性变换(非线性变换不会搞)。 那么,就会有一个变化前各数值在变换后各处的系数,即前一篇博文中的$f(i,j)$,表示线性变换中第$i$项到第$j$项的系数 ...

Sun Jun 11 05:02:00 CST 2017 0 2802
【learning】快速变换FWT

## 问题描述   已知\(A(x)\)和\(B(x)\),\(C[i]=\sum\limits_{j\otimes k=i}A[j]*B[k]\),求\(C\)   其中\(\otimes\)是三 ...

Wed Jul 04 03:21:00 CST 2018 5 847
关于快速变换(FWT)的一点学习和思考

  最近在学FWT,抽点时间出来把这个算法总结一下。   快速变换Fast Walsh-Hadamard Transform),简称FWT。是快速完成集合卷积运算的一种算法。   主要功能是求:,其中为集合运算符。   就像FFT一样,FWT是对数组的一种变换,我们称数组X ...

Tue Dec 12 01:39:00 CST 2017 5 5954
关于快速变换(FWT)的一些个人理解

定义 FWT是一种快速完成集合卷积运算的算法。 它可以用于求解类似 $C[i]=\sum\limits_{j⊗k=i}A[j]*B[k]$ 的问题。 其中⊗代表位运算中的|,&,^的其中一种。 求解(正变换) 设F(A)是对于A的一种变换。 并且F(A)要求满足 ...

Sun Jul 29 03:31:00 CST 2018 14 184
FWT快速变换学习笔记

FWT快速变换学习笔记 1、FWT用来干啥啊 回忆一下多项式的卷积\(C_k=\sum_{i+j=k}A_i*B_j\) 我们可以用\(FFT\)来做。 甚至在一些特殊情况下,我们\(C_k=\sum_{i*j=k}A_i*B_j\)也能做(SDOI2015 序列统计 ...

Mon May 21 16:53:00 CST 2018 44 14368
FWT (快速变换)详解 以及 K进制FWT

FWT (快速变换)详解 以及 K进制FWT 约定:\(F'=FWT(F)\) 卷积的问题,事实上就是要构造\(F'G'=(FG)'\) 我们常见的卷积,是二进制位上的or ,and ,xor 但正式来说,是集合幂指数 上的 并 , 交 , 对称差 为了说人话,这里就不带入集合 ...

Mon Apr 27 20:13:00 CST 2020 0 861
-哈达玛变换

函数函数有三种不同的函数定义,但都可由拉德梅克函数构成。 1、按排列的函数 其中,R(k+1,t)是任意拉德梅克函数,g(i)是i的格雷码, g(i)k是此格雷码的第k位数。P为正整数, 2、按佩利(Paley)排列的函数 其中,R ...

Fri Oct 22 02:24:00 CST 2021 0 397
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM