题目来源
2018中国大学生程序设计竞赛网络选拔赛 1003
题目
重写加法和乘法,
使得成立
思路来源
https://blog.csdn.net/jk_chen_acmer/article/details/82078532
题解
现在看来是如此的简单QAQ
然而出在构造还是想不到啊
由费马小定理,
,
,
故(mod p),
即加上模p意义即可
代码
#include<iostream>
#include<cstdio>
#include<cstring>
#include<queue>
using namespace std;
int T;
int p;
//重写加法和乘法 使得m^p+n^p==(m+n)^p
//0到p-1
int main()
{
scanf("%d",&T);
while(T--)
{
scanf("%d",&p);
for(int i=0;i<p;++i)
{
for(int j=0;j<p;++j)
{
printf("%lld%c",(i+j)%p,j==p-1?'\n':' ');
}
}
for(int i=0;i<p;++i)
{
for(int j=0;j<p;++j)
{
printf("%lld%c",(i*j)%p,j==p-1?'\n':' ');
}
}
}
return 0;
}