首页 > 其他 > 详细

快速乘(利用数的二进制进行计算)

时间:2020-12-21 18:27:57      阅读:30      评论:0      收藏:0      [点我收藏+]
#include<iostream>
using namespace std;
typedef long long ll;
ll q_mul(ll a, ll b, ll p) {
    ll ret = 0;
    while (b) {
        if (b&1)(ret += a)%=p;
        b>>=1;
        (a<<=1)%=p;
    }
    return ret;
}
int main() {
    ios::sync_with_stdio(0);
    ll a, b, p;
    cin >> a >> b >> p;
    cout << q_mul(a, b, p);
}

快速乘(利用数的二进制进行计算)

原文:https://www.cnblogs.com/Xiao-yan/p/14168895.html

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