高精度 素數判斷小優化(6N 1)

2021-10-09 05:15:16 字數 1970 閱讀 1300

——————出自南昌理工學院acm

#include

#include

#include

#include

using

namespace std;

intmain()

,b[1200]=

,c[1200]=

; a[1]

=1; b[1]

=2;for

(int i=

1;i<=n-

2;i++

)for

(int j=

1;j<

1200

;j++)}

for(

int j=

1;j<

1200

;j++

)for

(int k=

1;k<

1200

;k++

)memset

(c,0

,sizeof

(c));}

if(n==

1)cout<<1;

else

if(n==

0)cout<<0;

else

for(

int i=

1200-1

;i>=

1;i--

)return0;

}

高精減法:

#include

#include

using

namespace std;

char s1[

10088

],s2[

10088];

int a[

10088

],b[

10088

],c[

10088];

intmain()

len3=

max(len1,len2)

;for

(i=1

;i<=len1;i++

)for

(i=1

;i<=len2;i++

)for

(i=1

;i<=len3;i++)}

while

(c[len3]==0

)len3--;if

(len3<

1)cout<<0;

else

for(i=len3;i>

0;i--

) cout<;return0;

}

高精乘法:

高精乘(int,long long)型別

這裡就沒有寫高精乘高精,概念差不多

#include

#include

using

namespace std;

char s1[

2001

],s2[

2001];

int a[

2001

],b[

2001

],c[

2001

],i,j,len1,len2,len3;

intmain()

}while

(c[len3+1]

>

0)len3++

;while

(c[len3]==0

&&len3!=

1)len3--

;for

(i=len3;i>

0;i--

) cout<;return0;

}

6n+1是判斷這個數是否是素數的一種較好的方法。它能夠大大降低時間程式的複雜度。

int

isprime

(long

long num)

高精度加減乘法小程式

複習高精度玩,寫了個非常直觀的加減乘程式.1 uses math 2var 3a,b ansistring 4dc,la,lb longint 5 c array 2555555.2555555 of longint 6procedure plus a,b ansistring 7var 8tt,i...

python判斷素數優化 求素數優化演算法

在比賽或者工作時,有時候會經常要求我們程式設計求素數,但是我們自己寫出來的時間複雜度太高,所以我在這裡做個總結。先貼上最終函式,該段 在開啟最大 優化時,可以直接內嵌進呼叫程式中,使得速度更加極致。c語言 對 n 進行素數判斷 inline static int is prime int n int...

NOIP模擬 費馬小定理 高精度

問題描述 小a 養了一大坨細胞。最初小a 只有1 個細胞。每秒,小a 的每個細胞都會 成2 個細胞。已知 現在離 最初 已經過去了x 秒,那麼現在的細胞數當然是可以計算的。小a 想知道的當然不是當前的細胞數。小a 知道他養的細胞的習性 每y 個細胞會聚成一團。經常會有剩下的細胞,那麼我們稱這些細胞是...