时效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];
}
}