西电oj1066 费马小定理

问题 A: A^B % P

时间限制: 1 Sec  内存限制: 128 MB
提交: 28  解决: 8
[提交][状态][讨论版]

题目描述

输入

输出

样例输入

2
3 1 2
2 2 2

样例输出

9
64

思路:先求k=B0*B1*...*Bn-1%(p-1),最后算出A^k%p即为答案。    依据:由费马小定理,若a,p互质,a^(p-1)=1(mod p);因此,A^(B0*B1*...*Bn-1)%p=A^((p-1)的倍数+((B0*B1*...*Bn-1)%(p-1)))%p=(A^(p-1)的倍数%p)*((A^k)%p)=1*((A^k)%p)=A^k%p;

#include<bits/stdc++.h>using namespace std;const int maxn=10100;
const int INF=(1<<29);
typedef long long ll;
const ll p=1000000000+7;int T;
ll A,B0,n;ll qpow(ll n,ll k)
{ll res=1;while(k){if(k&1) res=(res%p)*(n%p);n=(n%p)*(n%p);k>>=1;}return res;
}ll s(ll x,ll p)
{ll res=1;p--;for(int i=0;i<=n-1;i++){res=(res%p)*(x%p)%p;x=((x%p)*(x%p)+p-1)%p;}return res;
}int main()
{cin>>T;while(T--){cin>>A>>n>>B0;ll k=s(B0,p);ll ans=qpow(A,k);cout<<ans%p<<endl;}return 0;
}

View Code

转载于:https://www.cnblogs.com/--560/p/4539174.html

西电oj1066 费马小定理相关推荐

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

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

  2. 欧拉定理 费马小定理

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

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

    欧拉定理:对于互质的两个正整数$a, n$,满足$a^{φ(n)} ≡ 1\  (mod\ n)$ 证明: 设集合$S$包含所有$n$以内与$n$互质的数,共有$φ(n)$个:$$S = \{ x_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. BZOJ 3240([Noi2013]矩阵游戏-费马小定理【矩阵推论】-%*s-快速读入)

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

最新文章

  1. python基础入门(4)之布尔值
  2. 《Android进阶之光》--事件总线
  3. Android 应用开发(35)---View与ViewGroup的概念
  4. js-JavaScript高级程序设计学习笔记1
  5. (3)通过输入参数(测量数据)构建三维体模型(02)
  6. Hyper-V使用手记(一):无法引导安装FreeBSD7
  7. java 全局钩子_[原]在全局鼠标钩子中模拟鼠标右键单击
  8. 洛谷 P3496 [POI2010]GIL-Guilds 题解
  9. 第三周作业#183;
  10. WEB前端开发工程师 学习第二天 文字文本
  11. zabbix的psk加密结合zabbix_get取值
  12. linux 文件恢复 软件,EasyRecovery轻松实现Linux数据恢复
  13. OpenJudge NOI 1.13 18:Tomorrow never knows?
  14. RT系统+STM32+SYN8266播报+红外定时器
  15. 虚拟创业云|BBC幼儿英语启蒙动画Nina and the Neurons妮娜和神经元
  16. 合并单元格如何快速填充序列
  17. 剖析ELF文件格式的内容———文件头,段表,符号....(第三章)
  18. Linux内核中断顶半部和底半部的理解
  19. VR头显价格天差地别,究竟哪一款最适合你?
  20. H3C路由器常用命令----更新中

热门文章

  1. Android--解析XML之PULL
  2. Sql Server数据库数据导入到SQLite数据库中
  3. 重要头文件: cc430x613x.h
  4. VB无所不能之三:VB截获Windows消息的钩子
  5. 我来了 开源社区的兄弟门
  6. 18.DataGrid内绑定ComboBox和ListBox以及取值
  7. Django之MVC框架与MTV框架详解
  8. 由浅入深剖析硬盘固件
  9. Oracle 12C 新特性之级联truncate
  10. 简单工厂模式--加减乘除运算