算法模板:快速幂

#include<iostream>
#include<cassert>
#include<cstdio>
#include<algorithm>
#include<cstring>
#include<string>
#include<set>
#include<queue>
#include<vector>

using namespace std;
typedef long long ll;
const int inf=0x7f7f7f7f;

const int mod=1000;

ll fastpow(ll base, ll power) {
    ll result=1;
    while(power>0) {
        if(power&1) // 如果power是奇数,就乘上现在的base
            result=(result*base)%mod; // 注意这个mod,真正使用时可能不需要
        power>>=1;
        base=(base*base)%mod;
    }
    return result;
}

int main(){
    ios::sync_with_stdio(false);
    cout<<fastpow(2,10);
    return 0;
}
/*

*/
posted @ 2021-10-15 18:43  MoonOut  阅读(22)  评论(0编辑  收藏  举报