博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
费马小定理
阅读量:4949 次
发布时间:2019-06-11

本文共 985 字,大约阅读时间需要 3 分钟。

二、费马小定理

费马小定理是数论中的一个定理:假如a是一个整数,p是一个质数,那么

是p的倍数(即(a
p-a)%p==0  -->  a
p%p=a%p),可以表示为

如果a不是p的倍数,这个定理也可以写成(同余式写法)

同余式

如果两个正整数 a和 b之差能被 n整除,那么我们就说 a和 b对模n同余,记作:

证明

任意取一个质数,比如13。考虑从1到12的一系列整数1,2,3,4,5,6,7,8,9,10,11,12,给这些数都乘上一个与13互质的数,比如3,得3,6,9,12,15,18,21,24,27,30,33,36。对于模13来说,这些数同余于3,6,9,12,2,5,8,11,1,4,7,10。这些余数实际上就是原来的1,2,3,4,5,6,7,8,9,10,11,12,只是顺序不同而已。

把1,2,3,…,12统统乘起来,乘积就是12的阶乘12!。把3,6,9,…,36也统统乘起来,并且提出公因子3,乘积就是312×12!。对于模13来说,这两个乘积都同余于1,2,3,…,12系列,尽管顺序不是一一对应,即312x12!≡12!mod 13。两边同时除以12!得312≡1 mod 13。如果用p代替13,用x代替3,就得到费马小定理xp-1≡1 mod p。

应用

  • 计算2^100除以13的余数
2^100除以13的余数
  • 证明对于任意整数a而言
    恒为2730的倍数。13减1为12,12的正因数有1, 2, 3, 4, 6, 12,分别加1,为2, 3, 4, 5, 7, 13,其中2, 3, 5, 7, 13为质数,
    根据定理,
    为2的倍数、为3的倍数、为5的倍数、为7的倍数、为13的倍数,即235713=2730的倍数。
  • long long f(long a,long b,long n)  //定义函数,求a的b次方对n取模{    int t,y;    t=1;    y=a;    while(b!=0)    {        if((b&1)==1)        t=t*y%n;        y=y*y%n;        b=b>>1;    }    return t;}

     

  •  

     

链接:
來源:简书
 

 

转载于:https://www.cnblogs.com/-citywall123/p/10673191.html

你可能感兴趣的文章
Cadence Allegro 如何关闭铺铜(覆铜)shape的显示和设置shape显示模式–allegro小技巧...
查看>>
IOS 透视投影矩阵推导(转)
查看>>
ios检查版本更新
查看>>
解读Loadrunner网页细分图(Web Page Diagnostics)
查看>>
Git忽略已经被版本控制的文件(添加.gitignore不会起作用)
查看>>
airprobe: gsm-tvoid : gsm_scan.py problem part1
查看>>
uva 11800 - Determine the Shape
查看>>
String painter (区间dp)
查看>>
make string from macro in C language
查看>>
layui [记录]
查看>>
JavaScript 闭包的例子
查看>>
发送curl请求的函数
查看>>
交换排序算法---冒泡排序与快速排序
查看>>
Git安装及创建版本库
查看>>
ubuntu操作系统以及开发环境的安装
查看>>
动态规划之01背包
查看>>
解决Docker容器时区及时间不同步问题
查看>>
Mybatis学习(一)
查看>>
centos6.9下 svn 1.7.10版本 编译安装
查看>>
poj3126 Prime Path 广搜bfs
查看>>