今天是数论周的最后一天,记得一周前从一个什么是数论?费马定理有什么用都不会的萌新,现在已经能开始写欧拉公式的模版、欧几里得、拓展欧几里得之类的模版了。

要求(A/B)%9973,但由于A很大,我们只给出n(n=A%9973)(我们给定的A必能被B整除,且gcd(B,9973) = 1)。

Input

数据的第一行是一个T,表示有T组数据。 
每组数据有两个数n(0 <= n < 9973)和B(1 <= B <= 10^9)。

Output

对应每组数据输出(A/B)%9973。

Sample Input

2
1000 53
87 123456789

Sample Output

7922
6060

对于这道题,题目给出gcd(B, 9973)=1即互质,又9973为质数,所以可以看出此处用到费马小定理。

由a=1(mod p),可以知道a^(p-1)=1(mod p)于是有a^(-1)=a^(p-2) (mod p)两边同除以a得到。

完整代码:

#include <iostream>
#include <cstdio>
#include <cmath>
#include <algorithm>
#include <limits>
using namespace std;
typedef long long ll;
ll a,b;
ll s_mi(ll x, ll y, ll mod)
{x%=mod;//int k=0;ll ans=0;/*while(y){int t=y&1;      //第k位上是否有1?ll temp=1;y=y>>1;if(t){for(int i=1; i<=k; i++){temp=(temp*(x*x)%mod)%mod;}}ans=(ans+temp)%mod;k++;        //放在最尾使得幂次从0开始}*/ans=x;for(int i=1; i<y; i++){ans=(ans%mod*x%mod)%mod;}return ans;
}
int main()
{int T;scanf("%d", &T);while(T--){scanf("%lld%lld",&a,&b);printf("%lld\n",(a*s_mi(b, 9971, 9973))%9973);}return 0;
}

A/B【费马小定理】相关推荐

  1. 欧拉定理 费马小定理

    前言 学基础数论的时候看过证明,然而很快就忘了,最近在学习高深一点的数论,于是再复习一下欧拉定理和费马小定理. 欧拉定理 内容 若正整数 \(a,n\) 互质,则 \(a^{\varphi(n)}\e ...

  2. 「欧拉定理」学习笔记(费马小定理)

    欧拉定理:对于互质的两个正整数$a, n$,满足$a^{φ(n)} ≡ 1\  (mod\ n)$ 证明: 设集合$S$包含所有$n$以内与$n$互质的数,共有$φ(n)$个:$$S = \{ x_1 ...

  3. 【ACM】杭电OJ 4704 Sum (隔板原理+组合数求和公式+费马小定理+快速幂)

    http://acm.hdu.edu.cn/showproblem.php?pid=4704 1.隔板原理 1~N有N个元素,每个元素代表一个1.分成K个数,即在(N-1)个空挡里放置(K-1)块隔板 ...

  4. 子段乘积(逆元费马小定理)+线段树做法

    题解:一开始做这个题的时候想过尺取法,但是因为没有逆元的知识,不知道该如何不断删除左端元素.其实这题并不难想,设l,r为两端开始都置为1,当长度小于k的时候不断乘右端元素并取余,当长度等于k时删除左端 ...

  5. luogu P2613 【模板】有理数取余(费马小定理,乘法逆元)

    整理的算法模板合集: ACM模板 目录 题目传送门 题目传送门 相当于是一个高精的费马小定理求乘法逆元.虽然数据达到了101000110^{10001}1010001,但是我们可以使用快读然后一直模m ...

  6. 关于素数常用结论--威尔逊定理、欧拉定理、费马小定理、米勒罗宾算法

    再需要判定的数比较大时,用枚举法肯定不行的,但目前数学界也没有任何一种又快又准确的判定素数的方法,并且也证明了素数不存在任何一种通项表达式.但作为初等数论中最大的一部分内容,数学家们对素数性质进行了大 ...

  7. 【BZOJ1951】【SDOI2010】古代猪文 Lucas定理、中国剩余定理、exgcd、费马小定理

    Description "在那山的那边海的那边有一群小肥猪.他们活泼又聪明,他们调皮又灵敏.他们自由自在生活在那绿色的大草坪,他们善良勇敢相互都关心--" --选自猪王国民歌 很久 ...

  8. HDU4549 M斐波那契数列(矩阵快速幂+费马小定理)

    Problem Description M斐波那契数列F[n]是一种整数数列,它的定义如下: F[0] = a F[1] = b F[n] = F[n-1] * F[n-2] ( n > 1 ) ...

  9. 西电oj1066 费马小定理

    西电oj1066 费马小定理 问题 A: A^B % P 时间限制: 1 Sec  内存限制: 128 MB 提交: 28  解决: 8 [提交][状态][讨论版] 题目描述 输入 输出 样例输入 2 ...

  10. BZOJ 3240([Noi2013]矩阵游戏-费马小定理【矩阵推论】-%*s-快速读入)

    3240: [Noi2013]矩阵游戏 Time Limit: 10 Sec   Memory Limit: 256 MB Submit: 123   Solved: 73 [ Submit][ St ...

最新文章

  1. 学界 | OpenAI 发布稀疏计算内核,更宽更深的网络,一样的计算开销
  2. 无需VR外设,普林斯顿学霸用DeepHand解放你的双手
  3. 死磕Java并发:Java内存模型之happens-before
  4. 51nod1092(lcs简单运用/dp)
  5. Vue调用后端接口http ajax请求组件封装及proxyTable跨域问题解决超详细案例
  6. mysql建立 分区_MySQL-mysql分区合理建立
  7. 光纤收发器的AB端可随便连接吗?
  8. 前端学习(1550):$scope和调试工具
  9. java中原始数据文件的输入
  10. 数学系鄙视物理系的经典桥段,全部看懂了算我输!
  11. iOS设置拍照retake和use按钮为中文简体
  12. linux 查看文件工具,lsof---Linux查看文件信息的强大工具
  13. 编译libxcb时报错:No package 'xcb-proto' found
  14. HTML5+CSS期末大作业:环保网站设计——环境保护(10页) 含设计报告 HTML+CSS+JavaScript 静态HTML环境保护网页制作下载 DIV+CSS环保网页设计代码...
  15. 当不知轴承型号时如何寻找轴承故障频率_电机轴承的故障诊断与失效分析
  16. 禁止AutoCAD联网
  17. 全文检索同时高亮多个字段
  18. 阿弥陀佛么么哒 - 笔记
  19. 【英语:语法基础】B2.核心语法-动词
  20. C#未能加载文件或程序集

热门文章

  1. HTML5 Canvas制作数独游戏(四)
  2. nginx配置服务器
  3. vue子组件的使用和事件传递
  4. 下载chrome插件,离线安装chrome插件
  5. 阿里规定超过三张表禁止JOIN,为啥?
  6. 2016腾讯实习生招聘在线笔试总结(移动开发)
  7. “阀值”与“阈值”的区别
  8. 洛依微服务版本简单研究
  9. 《iOS成长之路》开放订阅,和故胤道长 、张嘉夫 、onevcat、叶孤城、没故事的卓同学等技术大牛共同成长
  10. Ubuntu系统查看显卡型号