LeetCode 372. 超级次方(快速幂)
发布日期:2021-07-01 03:25:48
浏览次数:2
分类:技术文章
本文共 660 字,大约阅读时间需要 2 分钟。
1. 题目
你的任务是计算 ab 对 1337 取模,a 是一个正整数,b 是一个非常大的正整数且会以数组形式给出。
示例 1:输入: a = 2, b = [3]输出: 8示例 2:输入: a = 2, b = [1,0]输出: 1024
来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/super-pow
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
2. 解题
类似题目:
class Solution { public: int superPow(int a, vector & b) { int ans = 1, i; for(i = 0; i < b.size(); ++i) ans = (qpow(ans,10,1337)%1337)*(qpow(a, b[i], 1337)%1337); return ans%1337; } int qpow(int x, int p, int c) { int ans = 1; while(p) { if((p&1)==1) ans = (ans%c)*(x%c); x = (x%c)*(x%c); p >>= 1; } return ans%c; }};
24 ms 11.2 MB
转载地址:https://michael.blog.csdn.net/article/details/106189267 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
哈哈,博客排版真的漂亮呢~
[***.90.31.176]2024年05月01日 05时08分35秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!