話說我們現在要求一個函數\(f\)的前綴和。即求\(F(n)=\sum_{i=1}^nf(i)\)。 min25篩這個算法的主要思想是把\(1...n\)這些數按質數和合數分類,然后分別考慮質數和合數的貢獻。 STEP1 質數貢獻 我們嘗試先解決一個小問題:求\(G(m)=\sum_{i ...
前言 杜教篩學了,順便把min 篩也學了吧 剛好多校也有一道題需要補。 下面推薦幾篇博客,我之后寫一點自己的理解就是了。 傳送門 傳送門 傳送門 這幾篇寫得都還是挺好的,接下來我就寫下自己對min 篩的理解吧 。 正文 簡介: min 篩同杜教篩類似,是用來解決一類積性函數的前綴和,即 sum i nF i ,並且這里的 n 可以達到 的規模。 但所求積性函數要求滿足以下條件: F p 可以表示為 ...
2019-08-27 22:23 2 292 推薦指數:
話說我們現在要求一個函數\(f\)的前綴和。即求\(F(n)=\sum_{i=1}^nf(i)\)。 min25篩這個算法的主要思想是把\(1...n\)這些數按質數和合數分類,然后分別考慮質數和合數的貢獻。 STEP1 質數貢獻 我們嘗試先解決一個小問題:求\(G(m)=\sum_{i ...
//#include <bits/stdc++.h> #include <cstdio> #include ...
神佬yyb 神佬zsy 想不到花了兩個小時的時間看 \(min\_25\) 篩就看懂了 實際去追了一下魔禁3 我們先舉個例子。如求 \[\sum_{i=1}^{n}f(i) \] 其中 \(f(i)\) 是積性函數,而且要滿足 \(i\in prime\) 時 \(f(i ...
這兒只是一個簡單說明/概括/總結。 原理見這: https://www.cnblogs.com/cjyyb/p/9185093.html https://www.cnblogs.com/zhoushuyu/p/9187319.html 首先計算$$g(n,j)=\sum_if(i ...
洲閣篩 給定一個積性函數$F(n)$,求$\sum_{i = 1}^{n}F(n)$。並且$F(n)$滿足在素數和素數次冪的時候易於計算。 顯然有: $\sum_{i = 1}^{n} F(n) = \sum_{i = 1}^{\sqrt{n}}F(i) \left(\sum_ ...
min_25篩 用來干啥? 考慮一個積性函數\(F(x)\),用來快速計算前綴和$$\sum_{i=1}^nF(i)$$ 當然,這個積性函數要滿足\(F(x),x\in Prime\)可以用多項式表示 同時,\(F(x^k),x\in Prime\)要能夠快速計算答案 需要預處理的東西 ...
Min_25 篩是一種亞線性篩法,可以在 \(\mathcal{O}(\frac{n^{\frac{3}{4}}}{\log n})\) 的時間復雜度下快速算出形如: \[\sum_{i=1}^n f(i) \] 的值,不過一般比較好實現的方法被證明復雜度是 \(\mathcal{O ...
Min_25 篩 yyb好神仙啊 干什么用的 可以在\(O(\frac{n^{\frac 34}}{\log n})\)的時間內求積性函數\(f(x)\)的前綴和。 別問我為什么是這個復雜度 要求\(f(p)\)是一個關於\(p\)的簡單多項式,\(f(p^c)\)可以快速計算 ...