51nod 1227 平均最小公倍数 莫比乌斯反演+杜教筛

该博客探讨了如何利用莫比乌斯反演与杜教筛方法计算在1到n范围内Lcm(i, n)的平均数F(a, b)的问题。博客提供了题意解析,详细分析了计算过程,并给出了相应的代码实现,以处理大整数范围内的计算,最后输出结果模1000000007的值。" 121756726,11175035,Docker容器技术详解与实战,"['Docker', '容器技术', '运维', '虚拟化', '微服务']
摘要由CSDN通过智能技术生成

题意

Lcm(a,b)表示a和b的最小公倍数,A(n)表示Lcm(n,i)的平均数(1 <= i <= n),
例如:A(4) = (Lcm(1,4) + Lcm(2,4) + Lcm(3,4) + Lcm(4,4)) / 4 = (4 + 4 + 12 + 4) / 4 = 6。
F(a, b) = A(a) + A(a + 1) + …… A(b)。(F(a,b) = ∑A(k), a <= k <= b)
例如:F(2, 4) = A(2) + A(3) + A(4) = 2 + 4 + 6 = 12。
给出a,b,计算F(a, b),由于结果可能很大,输出F(a, b) % 1000000007的结果即可。
1 <= a <= b <= 10^9

分析

我们要求的实际就是

i=1nj=1ijgcd(i,j)

=d=1ni=1ndj=1ij[gcd(i,j)=1]

到这里为止就有两种方法,一种是转化为用 φ(d)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值