题目链接:https://vjudge.net/problem/HDU-6440

知识点:  构造、费马小定理

题目大意:

  给定一个素数 $p$,要求定义一个加法运算表和一个乘法运算表,尺寸都为 $p \times p$,加法运算表上第 $i$ 行第 $j$ 列的元素代表 $(i-1)+(j-1)$ 的值,乘法运算表上第 $i$ 行第 $j$ 列的元素代表 $(i-1) \times (j-1)$ 的值。要求满足两个条件:

  一、对于任意 $0 \le n,m < p$,$(n+m)^p = n^p + m^p$;

  二、存在一个 $q(0<q<p)$,使得 ${q^{k}|0<k<p, k \in Z} = {k|0<k<p, k \in Z}$.

解题思路一:

  加法运算表全部置为 $2$;

  乘法运算表上,首先第一行和第一列都置为 $0$,对于其他部分,第二行全置 $2$,第三行全置 $3$,依次类推直到倒数第二行,最后一行全置 $1$.

代码一:

 #include <bits/stdc++.h>
using namespace std; int main(){
int t;
scanf("%d",&t);
while(t--){
int p;
scanf("%d",&p);
for(int i=;i<p;i++){
printf("");
for(int j=;j<p;j++)
printf("");
puts("");
} printf("");
for(int i=;i<p;i++) printf("");
puts(""); for(int i=;i<p;i++){
printf("");
for(int j=;j<p;j++)
printf(" %d",i);
puts("");
} printf("");
for(int i=;i<p;i++) printf("");
puts("");
} return ;
}

解题思路二:

  由费马小定理可知 $(n+m)^p \equiv (n+m) \equiv n^{p} + m ^{p} (mod p)$,故只需将加法运算表和乘法运算表都定义为在模 $p$ 意义下的运算表即可。

代码二:

 #include <bits/stdc++.h>
using namespace std; int main(){
int t;
scanf("%d",&t);
while(t--){
int p;
scanf("%d",&p);
for(int i=;i<p;i++){
printf("%d",i);
for(int j=;j<p;j++)
printf(" %d",(i+j)%p);
puts("");
} for(int i=;i<p;i++){
printf("");
for(int j=;j<p;j++)
printf(" %d",i*j%p);
puts("");
}
} return ;
}

HDU6440 Dream的更多相关文章

  1. hdu6440 Dream 2018CCPC网络赛C 费马小定理+构造

    题目传送门 题目大意: 给定一个素数p,让你重载加法运算和乘法运算,使(m+n)p=mp+np,并且 存在一个小于p的q,使集合{qk|0<k<p,k∈Z} 等于集合{k|0<k&l ...

  2. 2018中国大学生程序设计竞赛 - 网络选拔赛 Dream hdu6440 Dream 给出一个(流氓)构造法

    http://acm.hdu.edu.cn/showproblem.php?pid=6440 题意:让你重新定义任意一对数的乘法和加法结果(输出乘法口诀表和加法口诀表),使得m^p+n^p==(m+n ...

  3. hdu6440 Dream(费马小定理)

    保证 当  n^p=n(mod p) 是成立 只要保证n*m=n*m(mod p); #include<bits/stdc++.h> using namespace std; int ma ...

  4. HDU6440 Dream 2018CCPC网络赛-费马小定理

    目录 Catalog Solution: (有任何问题欢迎留言或私聊 && 欢迎交流讨论哦 Catalog Problem:Portal传送门  原题目描述在最下面.  给定一个素数p ...

  5. HDU6440 Dream(费马小定理+构造) -2018CCPC网络赛1003

    题意: 给定素数p,定义p内封闭的加法和乘法,使得$(m+n)^p=m^p+n^p$ 思路: 由费马小定理,p是素数,$a^{p-1}\equiv 1(mod\;p)$ 所以$(m+n)^{p}\eq ...

  6. PK淘宝BUY+,京东推出AR购物应用JD Dream

        今年双十一淘宝推出了虚拟现实VR购物"BUY+",用户可以在虚拟环境中选购商品.那作为竞争对手的京东将使出什么绝招呢?在近日上海举办的谷歌开发者大会上得到了答案.会上京东推 ...

  7. [poj2411] Mondriaan's Dream (状压DP)

    状压DP Description Squares and rectangles fascinated the famous Dutch painter Piet Mondriaan. One nigh ...

  8. Dream It Possible

    反复听着Dream It Possible,想起自己的华为岁月,百感交集!

  9. POJ 题目2411 Mondriaan's Dream(状压DP)

    Mondriaan's Dream Time Limit: 3000MS   Memory Limit: 65536K Total Submissions: 13519   Accepted: 787 ...

随机推荐

  1. 集合框架-day10

    day10-集合框架-对象数组的概述与引用 1 集合框架的简单介绍: A:集合的由来 数组长度是固定,当添加的元素超过了数组的长度时需要对数组重新定义,太麻烦,java内部给我们提供了集合类,能存储任 ...

  2. 一个页面从输入url到页面加载完成究竟经历了些什么

    本人经参考谢希仁著<计算机网络(第 5版)>.<HTTP权威指南>和网络上关于浏览器渲染原理的介绍,结合自己理解,整理出以下结论,如有不正确或者不完善之处欢迎指正: 当用户在浏 ...

  3. Hardware Introduction

    计算机硬件组成可以概括为下图: CPU CPU生产商主要是Intel和AMD. Intel的产品主要有四种: Celeron(赛扬):低端处理器 Pentium(奔腾):比赛扬强,比酷睿弱 Xeon( ...

  4. 图论——Tarjan 初步 DFS序+时间戳+欧拉序

    一.什么是DFS序: DFS序是按照先序遍历,先遍历根节点然后依次遍历左子树,右子树的过程,每次遇到新的节点就把新访问节点加到序列中,代码如下: int DFSrk[100000]; int cnt= ...

  5. 洛谷 P1352 没有上司的舞会(树形 DP)

    题目描述 某大学有N个职员,编号为1~N.他们之间有从属关系,也就是说他们的关系就像一棵以校长为根的树,父结点就是子结点的直接上司.现在有个周年庆宴会,宴会每邀请来一个职员都会增加一定的快乐指数Ri, ...

  6. 美团分布式ID生成框架Leaf源码分析及优化改进

    本文主要是对美团的分布式ID框架Leaf的原理进行介绍,针对Leaf原项目中的一些issue,对Leaf项目进行功能增强,问题修复及优化改进,改进后的项目地址在这里: Leaf项目改进计划 https ...

  7. OpenCV 经纬法将鱼眼图像展开

    文章目录 前言 理论部分 鱼眼展开流程 鱼眼标准坐标计算 标准坐标系与球坐标的转换 代码实现 测试效果如下图 总结 this demo on github 前言 鱼眼镜头相比传统的镜头,视角更广,采集 ...

  8. 3-JVM垃圾回收算法和垃圾收集器

    垃圾回收算法和垃圾收集器 1.什么是垃圾回收 对于内存当中无用的对象进行回收,如何去判断一个对象是不是无用的对象. 引用计数法: 每个对象中都会存储一个引用计数,每增加一个引用就+1,消失一个引用就- ...

  9. 房价预测Task1

    pandas:简单的房价预测实例 我们使用pandas等工具,对于给出的.csv文件进行处理,完成要求的几个Task. 利用sklearn的线性回归,对于房价进行简单的预测. 所有的要求,数据集等文件 ...

  10. AXI总线slave模式下接收数据---verilog代码

    AXI总线slave模式下接收数据---verilog代码 `timescale 1ns / 1ps ///////////////////////////////////////////////// ...