从阶到原根和指标

感觉原根很玄妙啊

定义

满足 的最小xx称为aa关于pp的阶,记为δp(a)\delta_p(a),简写为δ(a)\delta (a)

性质

  1. δ(ak)=δ(a)gcd(δ(a),k)\delta(a^k)=\dfrac {\delta(a)}{\gcd(\delta(a),k)}
  2. gcd(δ(a),δ(b))==1δ(ab)==δ(a)δ(b)\gcd(\delta(a),\delta(b))==1\Leftrightarrow \delta(ab)==\delta(a)\delta(b)

求法

根据性质11δ(x)ϕ(x)\delta(x)|\phi(x),所以只要求出phi(x)phi(x),依次枚举其因数判断

原根

定义

δP(g)==ϕ(P)\delta_P(g)==\phi(P),则ggPP的原根

性质

  1. 时,才存在原根

求法

ϕ(P)\phi(P)质因数分解存储在p[]p[]中 然后从22开始枚举判断,如果对于pip[]\forall p_i\in p[],有 ,则xxPP的原根(一开始分子直接写了PP,但是因为数据弱一直水过了??)

指标

定义

如果gcd(b,P)==1\gcd(b,P)==1,那存在a,0a<ϕ(P)a,0\le a < \phi(P),满足 ,称aabb关于PP的指标,记 ,简记

性质

求法

求出原根gg,然后BSGS。