首页 > 其他 > 详细

快速乘

时间:2019-05-06 21:41:24      阅读:140      评论:0      收藏:0      [点我收藏+]
ll mul(ll a,ll b,ll p)
{
    if(a>1e9||b>1e9){
        ll x = 1LL<<25;
        ll L = a * (b >> 25LL) % p * x % p;
        ll R = a * (b & (x - 1)) % p;
        return (L + R) % p;
    }
    else
        return a*b%p;
}

运用乘法分配率,将b分成大于$2^{25}$的部分与小于$2^{25}$的部分乘。

快速乘

原文:https://www.cnblogs.com/MYsBlogs/p/10822201.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!