Problem: Fast Power (LintCode)
思路
对时间复杂度有要求 O(logn),所以要考虑对半分
取 mod 的分配率:(a b) % c = [(a % c) (b % c)] % c;
易错点
n == 0 的情况
当时错写成
return b;
中间的计算结果用 long 存储,最后再转成 int 类型
如果 power n 是奇数的话,记得再多乘一次 a
Last updated
对时间复杂度有要求 O(logn),所以要考虑对半分
取 mod 的分配率:(a b) % c = [(a % c) (b % c)] % c;
n == 0 的情况
当时错写成 return b;
中间的计算结果用 long 存储,最后再转成 int 类型
如果 power n 是奇数的话,记得再多乘一次 a
Last updated