暴力破解
我们很容易想到 可以采用 b 个 a 相乘来求结果。
但此种方法需要大量计算,时间复杂度为 。
#include <bits/stdc++.h>
using namespace std;
int main() {
    int a, b;
    long long ans = 1;
    cin >> a >> b;
    for (int i = 0; i < b; ++i) {
        ans *= a;
    }
    cout << ans << endl;
    return 0;
}
复制代码快速幂算法
当我们计算 次方的时候可以利用 。
这样每次我们只需要把指数 a 减少一半,底数 b 变为原来的平方即可大大减少循环的次数。
当指数为偶数时,每次把指数 b 缩小为原来的一半,底数 a 变为原来的平方。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
    喜欢就支持一下吧
相关推荐
            























![[桜井宁宁]COS和泉纱雾超可爱写真福利集-一一网](https://www.proyy.com/skycj/data/images/2020-12-13/4d3cf227a85d7e79f5d6b4efb6bde3e8.jpg)

![[桜井宁宁] 爆乳奶牛少女cos写真-一一网](https://www.proyy.com/skycj/data/images/2020-12-13/d40483e126fcf567894e89c65eaca655.jpg)
