洛谷 P1045 麥森數 題解

2021-10-09 00:06:33 字數 932 閱讀 1873

洛谷 p1045

形如 2^p

pp−1 的素數稱為麥森數,這時p一定也是個素數。但反過來不一定,即如果p

pp是個素數,2^p

pp−1不一定也是素數。到2023年底,人們已找到了37個麥森數。最大的乙個是p

pp=3021377,它有909526位。麥森數有許多重要應用,它與完全數密切相關。

任務:從檔案中輸入p

pp(1000p

p<3100000),計算2^p

pp−1的位數和最後500位數字(用十進位制高精度數表示)

檔案中只包含乙個整數p

pp(1000p

p<3100000)

第一行:十進位制高精度數2^p

pp−1的位數。

第2-11行:十進位制高精度數2^p

pp−1的最後500位數字。(每行輸出50位,共輸出10行,不足500位時高位補0)

不必驗證2^p

pp−1與p

pp是否為素數。

高精 ?

好久沒寫,複習複習

#include

#include

#include

using namespace std;

long long a[520],b[20]=;

int n,j=1,t,y;

void gjc(int x)

while

(t>0&&j<500)

} int main(

)else

y=j;

} int i=1;

if(a[i]-1>=0)

a[i]--;

else

while

(a[i]-1<0)

for(int i=500;i>0;i--)

return 0;

}

洛谷P1045 麥森數

形如2 12p 1的素數稱為麥森數,這時p p 一定也是個素數。但反過來不一定,即如果p p 是個素數,2 12p 1不一定也是素數。到1998年底,人們已找到了37個麥森數。最大的乙個是p 3021377p 3021 377 它有909526位。麥森數有許多重要應用,它與完全數密切相關。任務 從檔...

洛谷P1045麥森數

題幹很簡單,就是要求2的p次方 1的位數和後500位。首先我們肯定不會去把這個數算出來,不然鐵t,那怎麼算位數呢?於是我們想一想數學方法因為2的p次方個位數必不為0,所以2的p次方 1的位數和2的p次方位數相同。又有10的n次方是n 1位數所以轉化一下2的p次方就是10的log10 2 p 1位數,...

洛谷 P1045 麥森數

不會快速冪的我只能瘋狂壓位 dalao們請無視 這是本蒟蒻滴第一篇洛谷題解還請多多包涵鴨!好吧先看看我的辛路歷程 剛看到這題的時候,我第一反應是壓位,於是我從未壓位到 5壓到 10,吸氧後發現後兩者都是60分 o o 於是乎我將2p次方轉化為1024n m,以及220n m來運算,結果只有70分 最...