diff options
Diffstat (limited to 'math/transforms/multiplyNTT.cpp')
| -rw-r--r-- | math/transforms/multiplyNTT.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/math/transforms/multiplyNTT.cpp b/math/transforms/multiplyNTT.cpp new file mode 100644 index 0000000..806d124 --- /dev/null +++ b/math/transforms/multiplyNTT.cpp @@ -0,0 +1,8 @@ +vector<ll> mul(vector<ll> a, vector<ll> b) { + int n = 1 << (__lg(sz(a) + sz(b) - 1) + 1); + a.resize(n), b.resize(n); + ntt(a), ntt(b); + for (int i=0; i<n; i++) a[i] = a[i] * b[i] % mod; + ntt(a, true); + return a; +} |
