NEFU 117素數個數的位數

2022-09-02 08:51:07 字數 823 閱讀 2693

題目傳送門:點選開啟鏈結

小明是乙個聰明的孩子,對數論有著很濃烈的興趣。
他發現求1到正整數10n 之間有多少個素數是乙個很難的問題,該問題的難以決定於n 值的大小。
現在的問題是,告訴你n的值,讓你幫助小明計算小於10n的素數的個數值共有多少位?

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

對應每組資料,將小於10n 的素數的個數值的位數在一行內輸出,格式見樣本輸出。同組資料的輸出,其每個尾數之間空一格,行末沒有空格。

3

7

3

6

素數定理

素數定理:素數有無窮多個,能估計出小於乙個正實數x的素數有多少個,並用pi(x)來表示,這就是素數定理。隨著x的增長,pi(x)/(x/ln(x)) == 1.

這道題的資料量很大,因為10的n次方很大,會溢位,不能直接運算,該題只是求素數分布值的位數。考慮到使用素數定理,因為n/ln(n)與素數分布值pi(n)隨著n值的增大越來越接近,值的位數更不會出現誤差,所以直接求n/ln(n)的位數即可。

位數公式得知:[log10(n/ln(n))]+1

#include #include #include #include #include #include using namespace std;

char a[100];

int main()

return 0;

}

NEFU 117 素數個數的位數

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

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

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

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

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