超级次方

计算 a^b 对 1337 取模,a 是一个正整数,b 是一个非常大的正整数且会以数组形式给出。

  • 输入:a = 2, b = [3]
    输出:8

  • 输入:a = 2, b = [1,0]
    输出:1024

1
2
3
4
5
6
7
8
9
10
11
12
13
14
var superPow = function (a, b) {
const MOD = 1337;
let res = 1;
a %= MOD;
for(let i = b.length - 1; i >= 0; i--){
let k = 1;
for(let j = 0; j < 10; j++){
if(j == b[i]) res = res * k % MOD;
k = k * a % MOD;
}
a = k;
}
return res;
};