当前位置: 首页 > news >正文

主要给人家做网站的公司wordpress最大负载

主要给人家做网站的公司,wordpress最大负载,c 网站开发 pdf,优购网官网题目 求 a a a 的 b b b 次方对 p p p 取模的值。 输入格式 三个整数 a , b , p , a,b,p, a,b,p, 在同一行用空格隔开。 输出格式 输出一个整数,表示 a^b mod p 的值。 数据范围 0 ≤ a , b ≤ 1 0 9 0≤a,b≤10^9 0≤a,b≤109 1 ≤ p ≤ 1 0 9 1≤p≤10^…

题目

a a a b b b 次方对 p p p 取模的值。

输入格式

三个整数 a , b , p , a,b,p, a,b,p, 在同一行用空格隔开。

输出格式

输出一个整数,表示 a^b mod p 的值。

数据范围

0 ≤ a , b ≤ 1 0 9 0≤a,b≤10^9 0a,b109

1 ≤ p ≤ 1 0 9 1≤p≤10^9 1p109

输入样例

3 2 7

输出样例

2

思路

快速幂

任何一个整数都可以唯一表示为若干指数不重复的 2 的次幂的和。即是说如果 b b b 在二进制表示下 k k k 位,其中第 i ( 0 ≤ i ≤ k ) i(0 \le i \le k) i(0ik) 位的数字是 c i c_i ci,那么:
b = c k − 1 2 k − 1 + c k − 2 2 k − 2 + . . . + c 0 2 0 b = c_{k-1}2^{k-1} + c_{k-2}2^{k-2} + ... + c_0 2^0 b=ck12k1+ck22k2+...+c020
于是
a b = a c k − 1 × 2 k − 1 ∗ a c k − 2 × 2 k − 2 ∗ . . . ∗ a c 0 × 2 0 a ^b = a^{c_{k-1}\times2^{k-1}} * a^{c_{k-2} \times 2^{k-2}} * ... * a^{c_0 \times 2^0} ab=ack1×2k1ack2×2k2...ac0×20
因为 k = ⌈ l o g 2 ( b + 1 ) ⌉ k = \lceil log_2(b+1) \rceil k=log2(b+1)⌉,所以上式乘积项的数量不多于 k = ⌈ l o g 2 ( b + 1 ) ⌉ k = \lceil log_2(b+1) \rceil k=log2(b+1)⌉ 个。又因为:
a 2 i = ( a 2 i − 1 ) 2 a^{2^i} = (a^{2^{i-1}})^2 a2i=(a2i1)2
所以可以通过 k k k 次递归求出每个乘积项,当 c i = 1 c_i = 1 ci=1 时,将该乘积项累积到答案中。KaTeX parse error: Expected 'EOF', got '&' at position 3: b &̲ 1 运算可以取出 b b b 在二进制表示下的最低位,而 b > > 1 b >> 1 b>>1 运算可以舍去最低位,在递推过程中将二者集合,就可以遍历 b b b 在二进制表示下的所有数位 c i c_i ci

整个算法的时间复杂度为 O ( l o g 2 b ) O(log_2b) O(log2b)

代码

#include <cstdio>using namespace std;int main() {int a, b, p;scanf("%d%d%d", &a, &b, &p);int ans = 1 % p;while (b) {if (b & 1) ans = (long long)ans * a % p;b >>= 1;a = (long long)a * a % p;}printf("%d\n", ans);return 0;
}

注意

在 C++ 语言中,两个数值执行算术运算时,以参与运算的最高数值类型为基准,与保存结果的变量类型无关。换言之,虽然两个 32 位整数的乘积可能超过 int 类型的表示范围,但是 CPU 只会用 1 个 32 位寄存器保存结果,造成越界现象。因此,必须把其中一个数强制转换成 64 位整数类型 long long 参与运算,从而得到正确的结果。最终对 p p p 取模以后,执行赋值操作时,该结果会被隐式转换成 int 存回 ans 中。

http://www.yayakq.cn/news/275947/

相关文章:

  • 建设工程获奖查询网站2015做那些网站能致富
  • 腾讯云服务器可以做网站成都网站定制开发
  • 免费刷推广链接的网站wordpress 侧分类
  • 档案馆网站建设现状陕西网站制作公司哪家好
  • 电子商务网站的建设方法做网站中心
  • 杭州笕桥网站建设域名安装wordpress
  • 宣城公司网站建设市场营销互联网营销
  • 移动端网站如何做导出功能智能建造专业就业前景
  • 网站seo搜索引擎优化案例wordpress静态页面找不到
  • 国外辣妹服装设计网站推荐东莞求职招聘信息网
  • 网站访问找不到域名怎么回事网站推广的方式包括
  • 做网站背景图片浪漫爱情wordpress 教程主题
  • 潜江哪里做网站南宁刚刚发生的事
  • 团购产品 网站建设深圳福田在线
  • 创新型的网站建设门户网站建设自查整改报告
  • 有谁帮做网站ios wordpress发文章
  • 网站qq号获取温州建设集团有限公司网站
  • 编程网校泰州网站建设优化建站
  • wordpress快速建站视频教程erp系统的功能包括哪些
  • 做校招的网站有哪些网站建设及编辑岗位职责
  • 建网站和建网店的区别舟山的房子做民宿上什么网站
  • 做网站定位怎么用群晖nas做网站
  • 三亚同城招聘网站广东东莞十大特产
  • 电子烟网站设计南宁h5建站
  • wordpress免代码分享到唐山seo优化
  • wordpress本地建站凡科免费网站能用吗
  • 企业网站排名优化公司迅腾网络网站建设有限公司
  • 宝安区城市建设局网站怎么免费网站
  • 北海网站建设服务商制作logo设计
  • wordpress 手机网站支付宝wordpress 如何制作模板