素數個數的位數

2021-07-11 15:35:33 字數 687 閱讀 7829

小明是乙個聰明的孩子,對數論有著很濃烈的興趣。他發現求1到正整數10^n (10的n次方)之間有多少個素數是乙個很難的問題,該問題的難點在於決定於10^n 值的大小。

告訴你n的值,並且用ans表示小於10^n的素數的個數。

現在的問題是:ans這個數有多少位。

輸入資料有若干組,每組資料報含1個整數n(1 < n < 1000000000),若遇到eof則處理結束。

->題解:素數有無窮多個,能估計出小於乙個正實數x的素數有多少個,並用f(x)表示, 隨著x的增長,

f(x)  /  ( x / ln(x) ) = 1;  值的位數不會出現誤差,所以直接求( 10^n / ln(10^n) ) 的位數即可。

根據位數公式:lg( ( 10^n / ln(10^n) ) ) + 1  就是題中的解。

->c++中對數的表示:

#include#includeusing namespace std;

//const int e=2.71828;

int main ()

ac碼:

#include#includeusing namespace std;

int main ()

return 0;

}

nefu117 素數個數的位數 素數定理 位數公式

小明是乙個聰明的孩子,對數論有著非常濃烈的興趣。他發現求1到正整數10n 之間有多少個素數是乙個非常難的問題,該問題的難以決定於n 值的大小。如今的問題是,告訴你n的值,讓你幫助小明計算小於10n的素數的個數值共同擁有多少位?輸入資料有若干組,每組資料報括1個整數n 1 n 1000000000 若...

nefu117 素數個數的位數 素數定理 位數公式

這道題目 看著很嚇人,完全沒法入手,後來才知道是個簡單題,首先是 球位數,那肯定跟位數公式有關,再是素數,最後找了一下素數定理,先貼一下關於 素數定理的 資料 include根據素數定理,隨著x的增長 x 與 x lnx,最後幾乎相等,所以本道題目直接球 x lnx的位數即可,再根據位數公式 那麼 ...

NEFU 117 素數個數的位數

定義 x 為 1 到 x的素數個數。素數定理 隨著x的增長,x x ln x 1 推論 令pn是第n個素數,其中n是正整數,那麼pn n ln n 題意 求小於10的n次方的素數的個數共有多少位,n 1e9 題解 這道題的資料量很大,因為10的n次方很大,會溢位,不能直接運算,該題只是求素數分布值的...