C语言 | Leetcode C语言题解之第372题超级次方

题目:

题解:

cpp 复制代码
//计算a的b次方
int mypow(int a, int b){
    a = a % 1337; // 防止a过大超出规模
    int ret = 1;
    for(int i = 0; i < b; i++){
        ret *= a;
        ret = ret % 1337; //防止超出规模
    }
    return ret;
}
//整体计算
int superPow(int a, int* b, int bSize){
    if(a == 1) return 1;
    int sum = 1;
    for(int i = 0; i < bSize; i++){
        //由例子可知(x的10次方的次数)为(bSize-1),所以写在最开始,使得多出来的一次(循环次数为bSize)为计算1的十次方
        sum = mypow(sum, 10); 
        sum *= mypow(a, b[i]);
        sum = sum % 1337; //防止超出规模
    }


    return sum;
}
相关推荐
Yue丶越6 小时前
【C语言】字符函数和字符串函数
c语言·开发语言·算法
小白程序员成长日记7 小时前
2025.11.24 力扣每日一题
算法·leetcode·职场和发展
有一个好名字7 小时前
LeetCode跳跃游戏:思路与题解全解析
算法·leetcode·游戏
蓝牙先生8 小时前
简易TCP C/S通信
c语言·tcp/ip·算法
2501_941870568 小时前
Python在高并发微服务数据同步与分布式事务处理中的实践与优化
leetcode
Old_Driver_Lee9 小时前
C语言常用语句
c语言·开发语言
松涛和鸣9 小时前
从零开始理解 C 语言函数指针与回调机制
linux·c语言·开发语言·嵌入式硬件·排序算法
2501_9411477110 小时前
高并发微服务架构Spring Cloud与Dubbo在互联网优化实践经验分享
leetcode
无限进步_12 小时前
C语言动态内存的二维抽象:用malloc实现灵活的多维数组
c语言·开发语言·数据结构·git·算法·github·visual studio
Swift社区12 小时前
LeetCode 432 - 全 O(1) 的数据结构
数据结构·算法·leetcode