【模板】快速幂
来源:互联网 发布:python数据挖掘实战pdf 编辑:程序博客网 时间:2024/06/07 07:38
啊 写这个模板是源于一个悲伤的考试…
- 基本介绍
- 模板题目
- 代码实现
基本介绍
快速幂就是快速计算一个数的多少次幂 意思很好理解
思路就是 n^k拆成 n^k/2*n^k/2
说一下优化:当我们知道了n^k/2的时候 就不用再去递归求另一个n^k/2 直接存一下就好
核心代码
int quick(int num){ if(num==0){ return 1; } int tmp=quick(num/2); tmp=(tmp*tmp); if(num%2==1){ tmp=(tmp*b); } return tmp;}
模板题目
题目描述
输入b,p,k的值,求b^p mod k的值。其中b,p,k*k为长整型数。
输入输出格式
输入格式:
三个整数b,p,k.
输出格式:
输出s
s为运算结果
输入输出样例
输入样例:
2 10 9
输出样例:
7
代码实现
#include<iostream>using namespace std;int b,p,k;int quick(int num){ if(num==0){ return 1; } int tmp=quick(num/2)%k; tmp=(tmp*tmp)%k; if(num%2==1){ tmp=(tmp*b)%k; } return tmp;}inline void output(){ cout<<quick(p); }inline void input(){ cin>>b>>p>>k; b%=k;}int main(){ input(); output();}//COYG
取模的话..貌似不是除法就不会错
阅读全文
0 0
- 快速幂模板
- 矩阵快速幂模板
- 快速幂 ---模板
- 快速幂模板
- 快速幂模板
- 矩阵快速幂--模板
- 矩阵快速幂 模板
- 矩阵快速幂模板
- 矩阵快速幂模板
- 快速幂模板
- 快速幂小模板
- 【矩阵快速幂模板】
- 矩阵快速幂模板
- 快速幂模板
- 快速幂算法模板
- 矩阵快速幂模板
- 矩阵快速幂模板
- 整数快速幂【模板】
- Hibernate关联关系映射---多对多
- 三层构架总结
- Java中阻塞队列的使用
- 《深入理解java虚拟机》学习笔记8——Tomcat类加载器体系结构
- 河南省第十届ACM省赛G:Plumbing the depth of lake
- 【模板】快速幂
- Java动态化实例类
- CSDN博客收藏
- 个人学习(六)
- Linux 命令-文件备份和压缩命令
- S7 edge更新后侧屏不能使用解决方案
- 深度学习还不能解决什么问题?
- python基本语法
- 百度的科学计算器(简单) Python 库函数实现表达式求值