【因数之和】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)
相关推荐
databook5 分钟前
让你的动画“活”过来:Manim 节奏控制指南 (Rate Functions)
后端·python·动效
Q***f63514 分钟前
Kotlin在Android性能优化中的工具
android·开发语言·kotlin
金海境科技30 分钟前
【服务器数据恢复】华为云Stack虚拟化快照损坏导致民生数据丢失数据恢复案例 - 金海境科技
经验分享
菠菠萝宝1 小时前
【Java手搓RAGFlow】-9- RAG对话实现
java·开发语言·人工智能·llm·jenkins·openai
leon_zeng01 小时前
Qt OpenGL 3D 彩色立方体开发指南
开发语言·qt
小猪佩奇TONY1 小时前
OpenGL-ES 学习(16) ----Pixel Buffer Object
服务器·学习·elasticsearch
科威舟的代码笔记1 小时前
第10讲:Stream实战与陷阱——综合案例与最佳实践
java·开发语言
石像鬼₧魂石1 小时前
有哪些常见的字典可以用于Hydra的密码破解?
linux·学习·ssh
MM_MS1 小时前
WinForm+C#小案例--->爱心跑马灯演示
开发语言·c#·visual studio
福尔摩斯张1 小时前
C语言核心:string函数族处理与递归实战
c语言·开发语言·数据结构·c++·算法·c#