线性筛莫比乌斯函数 时间复杂度是多少?
  • 板块学术版
  • 楼主JK_LOVER
  • 当前回复19
  • 已保存回复19
  • 发布时间2020/5/20 16:06
  • 上次更新2023/11/7 02:07:26
查看原帖
线性筛莫比乌斯函数 时间复杂度是多少?
227824
JK_LOVER楼主2020/5/20 16:06
void work(int n)
{
	int tot = 0;
	mu[1] = 1;vis[1] = 1;
	for(int i = 2;i <= n;i++)
	{
		if(!vis[i])
		{
			p[++tot] = i;mu[i] = -1;
		}
		for(int j = 1;j <= tot && i*p[j] <= n;j++)
		{
			vis[i*p[j]] = 1;
			if(i%p[j] == 0) 
			{
				mu[i*p[j]] = 0;
				break;
			}
			mu[i*p[j]] = -1LL*mu[i];
		}
	}
}
2020/5/20 16:06
加载中...