【数学基础】【快速幂运算模板】

本文介绍了如何使用快速幂取模算法进行高效的模运算,并展示了如何利用该方法处理大数的乘方运算。通过具体的代码实现,帮助读者理解算法的工作原理。
部署运行你感兴趣的模型镜像

ACM模板

【快速幂取模运算】

//取模运算(a*b)%c = (a%c)*(b%c)%c 
int PowerMod(int a, int b, int c)
{
    int ans = 1;
    a = a % c;
    while(b>0)
    {
        if(b % 2 = = 1)
            ans = (ans * a) % c;
        b = b/2;
        a = (a * a) % c;
    }
    return ans;
}

【用快速幂求a的n次方】

涉及大数

long long sum,x;
int a,n;
x = a,sum = 1;
while(n)
{
    if(n%2)
        sum*=x;
    n>>1;//等价于n/=2
    x = x*x;
}

您可能感兴趣的与本文相关的镜像

EmotiVoice

EmotiVoice

AI应用

EmotiVoice是由网易有道AI算法团队开源的一块国产TTS语音合成引擎,支持中英文双语,包含2000多种不同的音色,以及特色的情感合成功能,支持合成包含快乐、兴奋、悲伤、愤怒等广泛情感的语音。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值