【因数之和】python求解方法

输入两个整数A和B,求A的B次方的因子和,结果对1000000007取模。

python 复制代码
def mod_exp(base, exp, mod):
    result = 1
    while exp > 0:
        if exp % 2 == 1:
            result = (result * base) % mod
        base = (base * base) % mod
        exp //= 2
    return result

def sum_of_factors(n):
    total = 0
    limit = int(n**0.5)
    for i in range(1, limit + 1):
        if n % i == 0:
            total += i
            if i != n // i:  # 如果是不同的因子,添加两个因子
                total += n // i
    return total

def main(A, B):
    MOD = 1000000007
    power_value = mod_exp(A, B, MOD)
    factors_sum = sum_of_factors(power_value) % MOD
    return factors_sum

# 示例
A = 2
B = 3
result = main(A, B)
print(result)
相关推荐
Elnaij13 小时前
从C++开始的编程生活(12)——vector简单介绍和迭代器
开发语言·c++
饼干,14 小时前
第23天python内容
开发语言·python
!chen14 小时前
CPP 学习笔记 语法总结
c++·笔记·学习
数学难14 小时前
Java面试题2:Java线程池原理
java·开发语言
咸鱼求放生14 小时前
Java 8 Stream API
java·开发语言
盒马盒马14 小时前
Rust:Trait 抽象接口 & 特征约束
开发语言·rust
天使街23号14 小时前
go-dongle v1.2.0 发布,新增 SM2 非对称椭圆曲线加密算法支持
开发语言·后端·golang
酷柚易汛智推官14 小时前
基于librespot的定制化Spotify客户端开发:开源替代方案的技术实践与优化
python·开源·酷柚易汛
雪碧聊技术14 小时前
requests入门
python·requests·请求头的user-agent
ThreeYear_s14 小时前
【FPGA+DSP系列】——MATLAB simulink仿真三相桥式全控整流电路
开发语言·matlab·fpga开发