Skip to content

Commit 4f100c5

Browse files
author
taotao
committed
Merge branch 'master' of github.com:DylanFrank/ACM_code
2 parents 749939c + 857e111 commit 4f100c5

File tree

1 file changed

+26
-0
lines changed

1 file changed

+26
-0
lines changed

Diff for: math/数论算法模板总结.md

+26
Original file line numberDiff line numberDiff line change
@@ -280,3 +280,29 @@ LL MLE(int *r,int *mod,int n){
280280
}
281281

282282
```
283+
#莫比乌斯反演
284+
线性筛法$O(n)$
285+
```c++
286+
int prime[maxn],cnt;
287+
int mu[maxn];
288+
289+
void init_mobius(){
290+
memset(prime,0,sizeof(prime));
291+
mu[1] =1;
292+
cnt =0;
293+
for(int i=2 ;i<maxn ; ++i){
294+
if(!prime[i]){
295+
prime[cnt++] = i;
296+
mu[i] = -1;
297+
}
298+
for(int j=0 ; j<cnt && i*prime[j]<maxn ; ++j){
299+
prime[i*prime[j]] = 1;
300+
if(i%prime[j])mu[i*prime[j]] = -mu[i];
301+
else {
302+
mu[i*prime[j]] = 0;
303+
break;
304+
}
305+
}
306+
}
307+
}
308+
```

0 commit comments

Comments
 (0)