求原根
- 不想学会了
- 存在:\(2,4,2\times p^k,p^k\) 像这样的数存在原根
- 找到最小原根:若模 \(m\) 意义的原根为 \(g\),需满足,设 \(p_i\) 为所有 \(\varphi(m)\) 的质因子,所有 \(p_i\) 需满足 \(g^{\frac{\varphi(m)}{p_i}}\) 在模 \(m\) 意义下不等于 \(1\)。
- 诶,若 \(m\) 是质数岂不是,\(a^{\varphi(m)}\) 模 \(m\) 意义下等于 \(1\) 着正好有圆形转盘的复数结构,又满足 \(\varphi(m)\) 的质因子不满足,那不正好是最大换结构?行就这么理解就好了
fft,ntt
- 感觉有 \(ntt\) 了大概率没有 \(fft\) 用。
- 注意枚举顺序,枚举一段区间 \(m\),但是我们在求 \(w_1\) 时是大区间,也就是 \(\frac{\varphi(p)}{2m}\),之后就是两个小区间对位取,后者乘 \(w_i\),前者加后者,前者减后者。注意最后要统一除区间长度啊!
- 复数的话,考虑圆上正着转,\((1,0)\) 开始,\(w_1=(cos_{\frac{2\pi}{2m}},sin_{\frac{2\pi}{2m}})\) 只要该后者的正负号就行。然后实现复数就行啦!