P3923 大学数学题
题目背景
琪露诺:我知道了!答案一定是1!
露米娅:什么鬼啊(汗),你还是再想想去吧。。我先把最后一道题给你,这是一道大学数学题哦
题目描述
露米娅:大妖精想构造一个 $ n $ 元有限域,元素用 $ 0 \sim n - 1 $ 的整数表示。
有限域需要满足以下条件:
1. 有加法单位元 $ o $ ,满足对于任意元素 $ a $ , $ o + a = a + o = a $;
2. 对于任意元素 $ a $ ,存在加法逆元 $ a^{-1} $ ,使得 $ a + a^{-1} = a^{-1} + a = o $;
3. 有不同于加法单位元 $ o $ 的乘法单位元 $ i $ ,满足对于任意元素 $ a $ , $ i \times a = a \times i = a $;
4. 对于任意非加法单位元元素 $ a $ ,存在乘法逆元 $ a^{-1} $ ,使得 $ a \times a^{-1} = a^{-1} \times a = i $;
5. 对于任意元素 $ x $ , $ y $ ,有加法交换律,即 $ x + y = y + x $;
6. 对于任意元素 $ x $ , $ y $ ,有乘法交换律,即 $ x \times y = y \times x $;
7. 对于任意元素 $ x $ , $ y $ , $ z $ ,有加法结合律,即 $ ( x + y ) + z = x + ( y + z ) $;
8. 对于任意元素 $ x $ , $ y $ , $ z $ ,有乘法结合律,即 $ ( x \times y ) \times z = x \times ( y \times z ) $;
9. 对于任意元素 $ x $ , $ y $ , $ z $ ,有乘法分配律,即 $ ( x + y ) \times z = x \times z + y \times z $。
大妖精当然会做啦,但是他想考考你。
在输出中加法单位元 $ o $ 即为 $ 0 $,乘法单位元 $ i $ 即为 $ 1 $。
输入格式
一个正整数 $ n $($ 2 \leq n \leq 350 $)。
输出格式
第一行输出一个整数 $ k $ ,若存在 $ n $ 元有限域则 $ k = 0 $ ,否则 $ k = -1 $。
若 $ k = 0 $ 则:
1. 接下来 $ n $ 行输出一个 $ n $ 元有限域的加法表,第 $ i + 1 $ 行第 $ j + 1 $ 列上的数代表有限域中 $ i + j $ 的运算结果;
2. 接下来 $ n $ 行输出一个 $ n $ 元有限域的乘法表,第 $ i + 1 $ 行第 $ j + 1 $ 列上的数代表有限域中 $ i \times j $ 的运算结果。
共输出 $ n \times 2 + 1 $ 行。
upd1: SPJ 非常严格,请不要在行末输出多余空格(答案文件末尾的换行还是会自动忽略的)
upd2: 正解文件比较大,洛谷可能会一直 judging... 如果遇到这种情况请直接提交源代码
说明/提示
| 测试点 | $ n $ 的范围 | 特殊性质|
| :-------: | :----------: | :-----------------: |
|1 | $ n = 3 $ | $ n $ 是质数 |
|2 | $ n = 4 $ | $ n $ 是 $ 2 $ 的整数次方 |
|3 | $ n = 6 $ | 无 |
|4 | $ n = 8 $ | $ n $ 是 $ 2 $ 的整数次方 |
|5 | $ n = 9 $ | 无 |
|6 | $ n = 19 $ | $ n $ 是质数 |
|7 | $ n = 89 $ | $ n $ 是质数 |
|8 | $ n = 181 $ | $ n $ 是质数 |
|9 | $ n = 233 $ | $ n $ 是质数 |
|10| $ n = 25 $ | $ n $ 是质数的平方|
|11| $ n = 121 $ | $ n $ 是质数的平方|
|12| $ n = 169 $ | $ n $ 是质数的平方|
|13| $ n = 27 $ | 无 |
|14| $ n = 143 $ | 无 |
|15| $ n = 128 $ | $ n $ 是 $ 2 $ 的整数次方 |
|16| $ n = 81 $ | 无 |
|17| $ n = 125 $ | 无 |
|18| $ n = 243 $ | 无 |
|19| $ n = 256 $ | $ n $ 是 $ 2 $ 的整数次方 |
|20| $ n = 343 $ | 无 |