(20200527)
题意
构造一个 n n n 元有限域。( 1 < n ≤ 1000 1<n\leq 1000 1<n≤1000)
题解
首先只有在 n n n 为质数的整数次幂时才能构造出来(不会证)。记 n = p d n=p^d n=pd。
d = 1 d=1 d=1 时,显然所有运算直接 m o d p \bmod p modp 就行。
d > 1 d>1 d>1 时,考虑把每个数写成 d − 1 d-1 d−1 次多项式 f ( x ) f(x) f(x) 的形式,系数就对应这个数在 p p p 进制下的每一位,令 x = p x=p x=p 则得到原数。
加法即普通的多项式加法,系数对 p p p 取模。
乘法如果是普通的多项式乘法,结果次数会超过 d − 1 d-1 d−1,于是尝试在此基础上模一个 d d d 次多项式