次方求模
来源:互联网 发布:网络中数据包流动图 编辑:程序博客网 时间:2024/06/05 22:31
次方求模
标签(空格分隔): 算法
问题
求a的b次方对c取余的值
解题思路
由公式:a^p mod m = (a mod m)^p mod m
应用
典型的就是南阳OJ102题,次方求模
代码
# author: jtusta# contact: root@jtahstu.com# site: http://www.jtahstu.com# software: RubyMine# time: 2017/6/9 03:54class PowMod # 循环写法 def powMod(a,p,m) res = 1 while p>0 if p%2==1 res = (res*a)%m end a = (a*a)%m p >>= 1 end res end # 递归写法 def powMod_2(a,p,m) res = 1 if p==0 return 1%m end if p==1 return a%m end res = self.powMod_2(a,p/2,m) res = res*res%m if p%2==1 res = res*a%m end res endendtest = PowMod.newp test.powMod(11,12345,12345)p test.powMod_2(11,12345,12345)
运行结果
/usr/bin/ruby -e $stdout.sync=true;$stderr.sync=true;load($0=ARGV.shift) /Users/jtusta/Documents/Code/Ruby/algorithm/pow_mod.rb1048110481Process finished with exit code 0
阅读全文
0 0
- 次方求模
- 高次方求模
- NYOJ - 次方求模
- 次方求模
- 次方求模
- 高次方求模
- acm-次方求模
- 次方求模
- 次方求模
- 次方求模
- 次方求模
- 次方求模
- 102 次方求模
- 次方求模
- 次方求模
- NYOJ-次方求模
- 高次方求模
- nyoj102次方求模
- C语言——第一部分 C语言概述以及编程基础
- 布局解决方案之居中布局
- Linux C编程学习笔记(2):open、creat、close函数及文件的创建、打开与关闭
- 布局解决方案之多列布局
- 布局解决方案之全屏布局
- 次方求模
- C#中数组Array、ArrayList、泛型List<T>的比较
- C#中字典集合HashTable、Dictionary、ConcurrentDictionary三者区别
- Axon Framework在聚合中处理命令
- 苹果CMS(maccms)模板中最新和最热分类显示处理方式
- 『AngularJS』$location 服务
- nRF51822低功耗CPU睡眠软件应用
- Intellij main方法
- 输出