快速幂算法

简介: 什么是快速幂呢?就是更快速的计算幂运算。

什么是快速幂呢?就是更快速的计算幂运算。


image.png

875. 快速幂 - AcWing题库

image.png

快速幂的作用就是跟题目中描述的一样

image.png

先预处理出这些值

image.png

比如

image.png

求k的个位

k&1

删除k的个位

k>>=1

image.png

#include <iostream>
#include <algorithm>
using namespace std;
typedef long long LL;
LL qmi(int a, int b, int p)
{
    LL res = 1;
    while (b)
    {
        if (b & 1) res = res * a % p;//b的个位如果是1
        a = a * (LL)a % p;
        b >>=1;//也可以写成b/=2
    }
    return res;
}
int main()
{
    int n;
    scanf("%d", &n);
    while (n -- )
    {
        int a, b, p;
        scanf("%d%d%d", &a, &b, &p);
        printf("%lld\n", qmi(a, b, p));
    }
    return 0;
}

在实际问题中的应用

神秘钥匙 (nowcoder.com)


6.2.png6.2.png

6.2.png

结果题目要求对1e9+7取模

6.2.png

Code over!

相关文章
|
8月前
|
算法
|
8月前
|
人工智能 Kubernetes 算法
算法常见技巧 -快速幂及其相关应用
算法常见技巧 -快速幂及其相关应用
|
算法
快速幂算法
快速幂算法
112 0
|
算法 Python
快速幂算法的实现
快速幂算法的实现
快速幂算法的实现
|
机器学习/深度学习 算法 JavaScript
【算法日记】快速幂:关于我知道答案却做不出来这档事
LeetCode第330场周赛,直接卡在了第二题😭,掉大分,学到一手快速幂。本文包含以下内容:快速幂,快速幂取余。
173 0
|
算法
算法题每日一练---第60天:快速幂
快速幂是一种简单而有效的小算法。
192 15
算法题每日一练---第60天:快速幂
[解题报告]《算法零基础100讲》(第15讲) 二分快速幂
[解题报告]《算法零基础100讲》(第15讲) 二分快速幂
[解题报告]《算法零基础100讲》(第15讲) 二分快速幂
|
算法
算法笔记学习---快速幂
算法笔记学习---快速幂
5694 0
|
算法 C语言
快速幂算法(数学)
快速幂算法(数学)
|
3天前
|
算法 数据安全/隐私保护
室内障碍物射线追踪算法matlab模拟仿真
### 简介 本项目展示了室内障碍物射线追踪算法在无线通信中的应用。通过Matlab 2022a实现,包含完整程序运行效果(无水印),支持增加发射点和室内墙壁设置。核心代码配有详细中文注释及操作视频。该算法基于几何光学原理,模拟信号在复杂室内环境中的传播路径与强度,涵盖场景建模、射线发射、传播及接收点场强计算等步骤,为无线网络规划提供重要依据。