//比二分法效率高
class Solution {
public:
int superPow(int a, vector<int>& b) {
long long ret = 1;
for (int i = 0; i < b.size(); ++i) {
ret = power(ret, 10) * power(a, b[i]) % 1337;// 这一步是关键
}
return ret;
}
int power(int y, int n) {
if (n == 0) return 1;
if (n == 1) return y % 1337;
return power(y % 1337, n / 2) * pow(y % 1337, n - n / 2) % 1337;
}
};
leetcode 372. Super Pow
最新推荐文章于 2022-04-10 07:54:07 发布