尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

【笔记】龟速乘与快速幂

【笔记】龟速乘与快速幂
📅 发布时间:2026/6/19 1:58:19

龟速乘与快速幂

n&1: 取n的二进制最末位
n>>1: 右移一位,相当于去掉n的二进制最末尾(相当于n/2)
n<<1 相当于n*2
if(n%2==1) 可以写成if((n&1)==1)或if(n&1)
位运算比 +-*/ 更快

龟速乘

求 $ (a\times b) \bmod p$。

例:

\((7 \times 3) \bmod 5\)

\(7=1+2+4\)

\(7 \times 3=(1+2+4) \times 3=(2^0+2^1+2^2) \times 3\)

\(\hspace{0.87cm}=3+6+12\)

\(7 \times 3 \bmod 5=(3 \bmod 5)+(6 \bmod 5)+(12 \bmod 5)\)

取 b 末尾二进制,如果是 1 就把 ans 加上 a,如果不是就不加。

ans 取余 p。

因为每往前一位二进制就乘 2,所以 a 也乘 2。

随后 b 除以 2。

Luogu P10446 64位整数乘法

#include<iostream>
#define int long long
using namespace std;
int a,b,p,ans;
signed main(){cin>>a>>b>>p;while(b){if(b&1){ans+=a;ans%=p;} a<<=1;a%=p;b>>=1;}cout<<ans;return 0;
}

快速幂

求 \(a^n \bmod p\)。

求 \(a^{19}\):

\(19=16+2+1=2^4+2^1+2^0\)

\(a^{19}=a \times a^2 \times a^{16}\)

与龟速乘同理,把加改成乘,\(ans\) 初值为 \(1\),结束。

严谨起见,要特判 \(ans=0\) 的情况。

#include<iostream>
#include<cstdio>
using namespace std;
int a,b,p;
long long ans;
long long ksm(int a,int b,int p){long long ans=1,tmp=a;while(b>0){if(b&1) ans=ans*tmp%p;tmp=tmp*tmp%p;b>>=1;}return ans;
}
int main(){cin>>a>>b>>p;ans=ksm(a,b,p);if(a==1&&b==0&&p==1) ans=0;printf("%d^%d mod %d=%d",a,b,p,ans);return 0;
}

Luogu P1965 [NOIP2013 提高组] 转圈游戏

求出公式:

\(ans=(x+((10^k \bmod n) \times m) \bmod n) \bmod n\)

用快速幂求出 \(10^k \bmod n\) 然后套公式计算。

#include<iostream>
#define int long long
using namespace std;
int n,m,k,x;
int kuai,ans;
long long ksm(int a,int b,int p){long long ans=1,tmp=a;while(b>0){if(b&1) ans=ans*tmp%p;tmp=tmp*tmp%p;b>>=1;}return ans;
}
signed main(){cin>>n>>m>>k>>x;kuai=ksm(10,k,n);ans=(x+(kuai*m)%n)%n;cout<<ans;return 0;
}

相关新闻

  • 2025 最新家电维修平台 TOP5 评测!优质家电维修服务商榜单发布,数智化赋能 + 全城覆盖,品质服务重构家庭生活体验 - 全局中转站
  • GitLab与DeepSeek协同实现MR自动评审实践指南
  • CF 口胡记录

最新新闻

  • 实木全屋定制哪家专业?临沂本地实木定制品牌综合排行参考 - 新闻快传
  • 用scikit-learn构建可解释的棒球预测模型
  • MPC555/556开发支持:调试模式、开发端口与寄存器详解
  • 2026合肥全域名表变现渠道盘点,连锁奢品行合扬综合实力位居前列 - 开心测评
  • BP Eva 赋能全周期绩效管理,让每轮考核沉淀员工能力成长档案
  • 2026年6月最新劳力士中国官方售后服务热线地址网点及客服电话 - 劳力士服务中心

日新闻

  • 5分钟掌握Python进化算法:Geatpy高性能优化工具完全指南
  • Microchip 24AA044 EEPROM选型与应用全指南:从参数解析到实战编程
  • 华为的鸿蒙到底有多牛?为什么称作遥遥领先?

周新闻

  • 3步解锁iOS设备:applera1n激活锁绕过完全指南
  • 39 2026 人工智能证书终极盘点,普通人选 AI 证书可以从这些方向入手
  • Redis 暴露公网有多危险?从端口检查到补救步骤

月新闻

  • 【总结】入门篇:50句话让你记住架构核心概念
  • WeChatMsg技术方案解析:实现Mac微信数据自主管理的完整解决方案
  • WeChatMsg:革新性微信数据备份方案,打造你的专属数字记忆库

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号