1.快速乘法
ll mul(ll a,ll b)//a*b
{
ll ans=0;
while(b)
{
if(b&1) ans=(ans+a)%mod;
b>>=1;
a=(a+a)%mod;
}
return ans;
}
2.快速幂(引用了快速乘法)
ll pow(ll a,ll b)//a^b
{
ll ans=1;
while(b)
{
if(b&1) ans=mul(ans,a);
b>>=1;
a=mul(a,a);
}
return ans;
}
3.矩阵快速幂(优先求出构造函数,或者找出函数规律)
参考——https://www.cnblogs.com/chsobin/p/8417356.html
需要额外注意(a^b-x)%c==(a^b-x+c)%c,防止减去x后值为负数
本文介绍了三种高效的数学运算方法:快速乘法,快速幂,以及矩阵快速幂。快速乘法通过位操作实现大数乘法,快速幂利用快速乘法进行高效指数计算,矩阵快速幂则适用于解决特定类型的函数迭代问题。文章提供了详细的算法实现代码,并附有相关链接供进一步学习。
1165

被折叠的 条评论
为什么被折叠?



