斐波那契公倍数

该博客探讨了如何计算斐波那契数列中多个数的最小公倍数(LCM)。利用斐波那契数的性质和最大公约数(GCD)的关系,结合莫比乌斯反演,可以将问题转化为计算特定指数的贡献。通过动态规划方法,实现了(O(nln n))的时间复杂度解决方案。
摘要由CSDN通过智能技术生成

题目大意

给定n个数\(a_1\)~\(a_n\),定义\(f_i\)为斐波那契数列,求出\(lcm(f_{a_1},...,f_{a_n})\)\(n\leq5\times 10^4\)\(a_i\leq10^6\)


根据斐波那契的性质,有\(gcd(f_n,f_m)=f_{gcd(n,m)}\)

又根据常识\(lcm(n,m)=\frac{nm}{gcd(n,m)}\)\(lcm(a,b,c)=\frac{abc\times gcd(a,b,c)}{gcd(a,b)\times gcd(b,c)\times gcd(a,c)}\),所以答案就是:

\[\prod_k f_k^{\sum_S(-1)^{|S|+1}[gcd(S)=k]} \]

只看指数部分,\(\sum_S(-1)^{|S|+1}[gcd(S)=k]=\

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值