Fast Power

class Solution {
    /*
     * @param a, b, n: 32bit integers
     * @return: An integer
     */
    public int fastPower(int a, int b, int n) {
        long ans = 1 % b, tmp = a;
        while(n > 0) {
            if (n % 2 == 1) {
                ans = ans * tmp % b;
            }
            tmp = tmp * tmp % b;
            n = n / 2;
        }
        return (int)ans;
    }
}

最后更新于

这有帮助吗?