372. 超级次方https://leetcode.cn/problems/super-pow/
难度中等279
你的任务是计算 ab
对 1337
取模,a
是一个正整数,b
是一个非常大的正整数且会以数组形式给出。
示例 1:
输入:a = 2, b = [3] 输出:8
示例 2:
输入:a = 2, b = [1,0] 输出:1024
示例 3:
输入:a = 1, b = [4,3,3,8,5,2] 输出:1
示例 4:
输入:a = 2147483647, b = [2,0,0] 输出:1198
提示:
1 <= a <= 231 - 1
1 <= b.length <= 2000
0 <= b[i] <= 9
b
不含前导 0
通过次数41,488提交次数72,373
class Solution {
public int superPow(int a, int[] b) {
int ans = 1;
int x = 1;
int z = a%1337;
for(int i=b.length-1;i>=0;i--)
{
for(int j=0;j<b[i]*x;j++)
ans = ((ans%1337)*z)%1337;
x *= 10;
}
return ans;
}
}