线性筛μ的模板

来源:互联网 发布:淘宝买家怎么删除追评 编辑:程序博客网 时间:2024/05/19 13:59

时效O(n)
因为质数的μ都是-1,然后一个数t里面如果有多个质数=zhi[j]*i,i是有很多个与zhi[j]互异的质数相乘的,那么μ[t]=-μ[i]。

miu[1]=1;qian[1]=1;    fo(i,2,n){        if(!bz[i]){            zhi[++zhi[0]]=i;            miu[i]=-1;        }        fo(j,1,zhi[0]){            t=zhi[j]*i;            if(t>n)break;            bz[t]=1;            if(i%zhi[j]==0)break;            miu[t]=-miu[i];        }    }
1 0