【力扣·每日一题】372. 超级次方(欧拉降幂 快速幂)

简介: 【力扣·每日一题】372. 超级次方(欧拉降幂 快速幂)

linkk

题意:

20200401134307494.png

20200401134307494.png

思路:

欧拉降幂公式为:

abmodp=abmodphi(p)modp

其中p为质数,p h i ( p )为p的欧拉函数

由于题目里给出的p是固定的1337,所以其欧拉函数值为1140,可以求出b m o d    p h i ( p ) b的值。

再用快速幂求剩下的值就可以了

代码:

class Solution {
public:
    long long ksm(long long a,long long b,long long p){
        long long res=1;
        while(b){
            if(b&1) res=res*a%p;
            a=a*a%p;
            b=b/2;
        }
        return res;
    }
    int superPow(int a, vector<int>& b) {
        long long c=1140;
        long long sum=0;
        for(int i=0;i<b.size();i++){
            sum=(sum*10+b[i])%c;
        }
        return ksm(a,sum,1337);
    }
};
目录
相关文章
|
2天前
D - 11(逆元好题)
D - 11(逆元好题)
|
2天前
每日一题(珠玑妙算,两数之和)
每日一题(珠玑妙算,两数之和)
21 1
|
9月前
|
存储 人工智能 测试技术
【AcWing每日一题】4644. 求和
【AcWing每日一题】4644. 求和
54 0
|
10月前
|
机器学习/深度学习
《蓝桥杯每日一题》背包dp·AcWing3382. 整数拆分
《蓝桥杯每日一题》背包dp·AcWing3382. 整数拆分
48 0
|
10月前
|
算法
《蓝桥杯每日一题》二分·AcWing 1460. 我在哪?
《蓝桥杯每日一题》二分·AcWing 1460. 我在哪?
36 0
|
10月前
《蓝桥杯每日一题》递推·AcWing 3777. 砖块
《蓝桥杯每日一题》递推·AcWing 3777. 砖块
52 0
【蓝桥杯集训·每日一题】AcWing 3625. 幂次方
文章目录 一、题目 1、原题链接 2、题目描述 二、解题报告 1、思路分析 2、时间复杂度 3、代码详解 三、知识风暴 快速幂
44 0
【蓝桥杯集训·每日一题】AcWing 3792. 质数问题
文章目录 一、题目 1、原题链接 2、题目描述 二、解题报告 1、思路分析 2、时间复杂度 3、代码详解 三、知识风暴 筛质数 埃氏筛法 线性筛法
66 0
|
C++
【寒假每日一题】AcWing 4728. 乘方
目录 一、题目 1、原题链接 2、题目描述 二、解题报告 1、思路分析 2、时间复杂度 3、代码详解
113 0
|
存储 人工智能 算法
【蓝桥杯集训·每日一题】AcWing 3485. 最大异或和
文章目录 一、题目 1、原题链接 2、题目描述 二、解题报告 1、思路分析 2、时间复杂度 3、代码详解 三、知识风暴 前缀和 Tire树 贪心算法
132 0