CSTFS1064 A of power b 运用反复平方法求数的幂
来源:互联网 发布:mac硬盘不能拷贝 编辑:程序博客网 时间:2024/04/30 00:21
Problem Address:http://cstfs.gdufs.edu.cn:8080/JudgeOnline/problem.jsp?id=1064
是求a的b次幂。
但是数值很大,不过结果是对100求模。
首先把a对100求模。
然后仔细观察两位数的幂,因为只有两位,所以每20次方重复一次。
不过要注意第一次不适合这个规律,所以要出去幂为1之后再应用。
同样的只有一位数的时候也有相似的规律。
代码如下:
p.s.刚刚查到过了六级。不过成绩不够理想。还得再考。好好加油!
+++++++++++++++++++++++++++++++++++时间分割线:以上为3月1日,以下为4月7日。
今天看了算法导论里的数论里面的一点东西,讲到了“运用反复平方法求数的幂”,大概就是这道题吧。
所以今晚回到宿舍写了一下,然后轻松A掉这道题。
所谓的“运用反复平方法求数的幂”,具体就去看算法导论吧。
求a^b mod n的值。
把b化为二进制数。
从高位开始。d=1。
从高位循环到低位。
d = (d * d) mod n。
如果此位二进制数为1,则 d = (d * a) mod n。
基本思想就是,该二进制代表着数的幂。如果读入下一位,表示把前面的数平方一次。如果该为1,则需要再乘多一个a。
还像没怎么讲明白……不懂的好好看书吧……
总之就是A掉了~
- CSTFS1064 A of power b 运用反复平方法求数的幂
- "反复平方"——快速计算一个数的平方
- B. Strings of Power
- B. Strings of Power
- 求A到B之间完全平方数的个数
- 给定正整数b,求最大的整数a,满足a*(a+b) 为完全平方数
- A/B 扩展欧几里得的运用
- [leetcode] Power of Two 判断一个数是否是2的平方
- 反复平方法(很经典的算法)
- A - Power of Cryptography uva113
- 用反复平方法求幂运算
- hdu 2035 反复平方法
- Power of Two 二的幂
- Power of Two | Leetcode 二的幂
- Power of Three | leetcode 三的幂
- Power of Four | leetcode 四的幂
- cf 318B. Strings of Power
- 例子4.12 求方程的根。a,b,c由键盘输入,设b平方—4ac>0.
- 不一样的课程表,不一样的Excle--用Excle进行设计(22):网状结构的实现
- 管理类应用系统参数配置管理统一解决方法(含代码参考)
- 图像处理中 correlation 和 convolution 的联系和区别
- 总结:结构体嵌套调用内层结构体数据的问题
- 管理类应用系统参数配置管理统一解决方法(含代码参考)
- CSTFS1064 A of power b 运用反复平方法求数的幂
- mysql 性能测试——sysbench工具使用
- 1、WPF第一个程序
- C++成员函数的重载、覆盖与隐藏
- jxt解析上传的xls文件
- iPhone编程- 启动画面
- python学习笔记(一)
- thinkpad 使用Ready for 4G的尝试
- C++ 学习—指针和引用