题意:
思路:
欧拉降幂公式为:
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); } };