CF1687E

gcd为将所有质因子出现次数取min。

本题的v为:每一个质因子的指数为最少的出现次数和第二少的出现次数之和。

可以先构造出最少,再乘上第二少。

操作为取指数max。

考虑min-max容斥:

min(S)=TS(1)|T|+1max(T)

min2(S)=TS(1)Tmax(T)×(|T|1)

min2为第二小。

v=min(\seta1,a2...an)×min2(\seta1,a2...an)

对应到gcdlcm

gcd(S)=TSlcm(T)(1)|T|+1

gcd2(S)=TSlcm(T)(1)T×(|T|1)

gcd(S)×gcd2(S)=TSlcm(T)(1)|T|+1+(1)T×(|T|1)

后面枚举T的部分不太好优化,但是考虑到gcd的性质,我们不需要保留那么多的S。

可以贪心保留需要的S,不会超过O(log(max(a[i]))

posted @   WWW~~~  阅读(54)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 一文读懂知识蒸馏
· 终于写完轮子一部分:tcp代理 了,记录一下
点击右上角即可分享
微信分享提示