大数取模的两道题。

虐狗宝典学习笔记:

两个数值执行算术运算时,以参与运算的最高数值类型为基准,与保存结果的变量类型无关。两个32位整数的成绩可能超过int类型的表示范围,但是CPU只会用一个32位寄存器保存结果,造成越界,此时我们必须把其中一个数强制转换成64位整数类型long long参与运算。得到正确的结果,取模后,执行赋值操作时,该结果会被隐式转换成int存回。

CH0101---a^b

 #include <bits/stdc++.h>
#define inf 0x3f3f3f3f
using namespace std;
typedef long long LL; int power(int a, int b, int p)
{
int ans = % p;
while(b){
if(b & ) ans = (long long) ans * a % p;
a = (long long)a * a % p;
b >>= ;
}
return ans;
} int main()
{
int a, b, p;
scanf("%d%d%d", &a, &b, &p);
printf("%d\n", power(a, b, p));
return ;
}

CH0102---64位整数乘法

 #include <bits/stdc++.h>
#define inf 0x3f3f3f3f
using namespace std;
typedef long long LL; long long mul(long long a, long long b, long long p)
{
long long ans = ;
while(b){
if(b & ) ans = (ans + a) % p;
a = a * % p;
b >>= ;
}
return ans;
} int main()
{
LL a, b, p;
scanf("%lld%lld%lld", &a, &b, &p);
printf("%lld\n", mul(a, b, p));
return ;
}

最新文章

  1. jquery html属性和text属性的区别
  2. js实现鼠标点击input框后里面的内容就消失代码
  3. bzoj1803: Spoj1487 Query on a tree III
  4. String的成员方法的使用
  5. sip演示
  6. 利用COM组件IPicture读取jpg、gif、bmp图片文件数据和显示图片
  7. Redis + Jedis + Spring整合遇到的异常(转)
  8. C# 线程知识--使用Task执行异步操作
  9. WEB漏洞攻击之验证码绕过浅析
  10. Hadoop 发行版本 Hortonworks 安装详解(一) 准备工作
  11. Nginx 开启gzip 压缩,实现基于域名的虚拟主机。
  12. spark ML pipeline 学习
  13. C语言作业06--结构体&amp;文件
  14. OpenJ_Bailian 2814 拨钟问题
  15. plsql备份表---只是表---不包含表数据
  16. drf 生成接口文档
  17. 微信小程序开发——使用回调函数出现异常:TypeError: Cannot read property &#39;setData&#39; of undefined
  18. ELK之filebeat
  19. VS2012 扩展和更新里 插件状态 为禁用 的解决办法!
  20. 输入一个十进制的数到dx_ax,然后十六进制转十进制输出

热门文章

  1. python 源码安装
  2. openvpn记住用户名和密码,自动连接
  3. Lua协程-测试2
  4. 【代码审计】BootCMS v1.1.3 文件上传漏洞分析
  5. 【代码审计】eduaskcms_v1.0.7前台存储型XSS漏洞分析
  6. Kafka consumer group位移重设
  7. 【译】Kafka学习之路
  8. TableView头视图高度问题
  9. 关于VC中的附加进程调试
  10. QT之 Hello World