当前位置: 首页 > article >正文

蓝桥杯3522 互质数的个数 | 数论

题目传送门
0


首先根据a^b得出需要使用欧拉函数φ,根据欧拉函数的性质:
φ ( a b ) = a b − 1 ∗ φ ( a ) φ ( n ) = n ∗ ( 1 − 1 / p 1 ) ∗ ( 1 − 1 / p 2 ) ∗ . . . ∗ ( 1 − 1 / p k ) ,其中 p i 为 n 的质因数 φ(a^b)=a^{b-1}*φ(a)\\ φ(n)=n*(1-1/p_1)*(1-1/p_2)*...*(1-1/p_k),其中p_i为n的质因数 φ(ab)=ab1φ(a)φ(n)=n(11/p1)(11/p2)...(11/pk),其中pin的质因数
于是使用python的快速幂函数即可得到结果。


mod = 998244353
a, b = map(int, input().split())


# 欧拉函数模版
def euler(x: int) -> int:
    phi = x
    for i in range(2, int(pow(x, 0.5)) + 1):
        if x % i != 0:
            continue
        while x % i == 0:
            x = x // i
        phi = phi * (i-1) // i
    if x > 1:
        phi = phi * (x-1) // x
    return phi


ans = (euler(a) * (pow(a, b-1, mod))) % mod
print(ans)

END✨


http://www.kler.cn/a/518217.html

相关文章:

  • c语言(转义字符)
  • Linux磁盘挂接教程
  • Prompt 提示词详解
  • ConnectionResetError: [Errno 104] Connection reset by peer
  • 2K高刷电竞显示器推荐
  • 【力扣Hot 100】普通数组2
  • 回首2024,展望2025
  • 消息队列篇--原理篇--Pulsar和Kafka对比分析
  • 【2024年终总结】深圳工作生活评测
  • Vue3 v-bind 和 v-model 对比
  • IDE提示:因为在此系统上禁止运行脚本。有关详细信息,请参阅 https:/go.microsoft.com/fwlink/?LinkID=135170
  • 目标检测与语义分割
  • 鸿蒙开发黑科技“stack叠层”替代customdialog
  • 国产编辑器EverEdit -书签管理器
  • 用 Python 实现近实时闪电数据可视化
  • Linux C\C++编程-Linux系统的字符集
  • Anybus网关EtherNet/IP扫描器:快速、可靠、易配置的新一代网关
  • 使用CSS快速居中div的七种方法
  • 基于C语言的数组从入门到精通
  • Linux关于华为云开放端口号后连接失败问题解决