反演 1
数论分块
考虑一个反比例函数
对于这个函数向下取整,得到这个函数
这个函数值相同的部分肯定是连续段
通过数论分块可以快速求出左右端点,进而快速求区间和
时间复杂度
莫比乌斯反演
证明:
考虑到如果一个质因数的指数大于
所以现在变成了选偶数个质因数的数的个数减去选奇数个质因数相乘的数的个数
那么根据二项式定理的推论,结果就显然是
反演的形式是这个:
莫比乌斯反演的套路
如果还能有进一个
化成上述形式以后再考虑筛法问题
考虑的方向就是换元搞狄利克雷卷积
把后边整成一个积性函数
然后套线性筛杜教筛啥的快速求一个前缀和
最后上数论分块做到线性或低于线性即可
for(int i=2;i<N;++i) {
if(!flg[i]) p[++tot]=i,mu[i]=-1,f[i]=1;
for(int j=1;j<=tot&&i*p[j]<N;++j) {
int x=i*p[j];
flg[x]=1;
if(i%p[j]==0) {
f[x]=mu[i];
mu[x]=0;
break;
} else {
f[x]=-f[i]+mu[i];
mu[x]=-mu[i];
}
}
f[i]+=f[i-1];
}
如果用线筛考虑套线筛板子推怎么线筛
(记所有质数的集合为
考虑线筛板子一共是
然后就是前缀和
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· Manus的开源复刻OpenManus初探
· 写一个简单的SQL生成工具