解题报告: 快速幂
2015-07-13 11:50
218 查看
http://www.lintcode.com/zh-cn/problem/fast-power/
class Solution { public: /* * @param a, b, n: 32bit integers * @return: An integer */ int *d; int fastPower(int a, int b, int n) { // write your code here return k(a, b, n); } long long k(int a, int b, int n) { // write your code here if (n == 0)return 1 % b; if (n == 1)return a%b; int mid = sqrt(n); long long c = k(a, b, mid); long long l = k(a, b, n - mid*mid); long long result = 1; while (mid--) { result *= c; result %= b; } return result*l%b; } };
相关文章推荐
- Win10 UWP开发中的重复性静态UI绘制小技巧 1
- 并发 并行 同步 异步 多线程 阻塞 非阻塞的区别
- BZOJ4031——HEOI小z的房间
- GRE写作必备句型
- c++函数特性一览
- C语言strstr()函数:返回字符串中首次出现子串的地址
- android中在Layout布局文件中添加控件ID,在Activity中findViewById找不到
- 【转】VS2012自带的 性能分析 工具使用实例
- Spark Streaming教程
- ubunt下安装sqlite3
- android UI 设计
- Eclipse远程Debug设置
- Android 屏幕旋转 处理 AsyncTask 和 ProgressDialog 的最佳方案
- JQUERY名称冲突
- Hadoop中MapReduce多种join实现实例分析
- Linux-----Ubuntu下apt-get安装软件包时依赖包版本过高
- 线程同步
- 电脑重装系统
- 【动态规划】[UVA 437]The Tower of Babylon
- 命令查看APK文件的信息