數(shù)學(xué)day2-數(shù)論maths in acm程序設(shè)計競賽中的_第1頁
數(shù)學(xué)day2-數(shù)論maths in acm程序設(shè)計競賽中的_第2頁
數(shù)學(xué)day2-數(shù)論maths in acm程序設(shè)計競賽中的_第3頁
數(shù)學(xué)day2-數(shù)論maths in acm程序設(shè)計競賽中的_第4頁
數(shù)學(xué)day2-數(shù)論maths in acm程序設(shè)計競賽中的_第5頁
已閱讀5頁,還剩40頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、費馬小定理與素p互質(zhì),則aap 1mod1偽素數(shù):n是費馬小定理與素p互質(zhì),則aap 1mod1偽素數(shù):n是一個正整數(shù),如果存在和n互素的正數(shù)a滿足1modn,n是基于a的偽- Miller-Rabbin測試:不斷的選取不超過n-1的不同基b,計算1mod n是否成立,如果每次- 成立,則n是素輔助以二次探測算法,可以避免將偽素數(shù)判成如果p是素數(shù),x21modp解只能是x1或xp- TwiceDetect(longlonga,longlong b,longlongt= TwiceDetect(longlonga,longlong b,longlongt= long longx,while(b&

2、 1)=b=1; y = x = while(t-)erMod(a,b,y= MultiMod(x,x,if(y=1&x!=1&x!=k-1) return 0;x =returny !=1 ?0 :bool MillerRabin(long long longlong bool MillerRabin(long long longlong for (i = 0;i MAX; tmp =rand() % (n -1) + if(TwiceDetect(tmp, n-1,n)!=1) return (i = erMod(a, b, k) =a b%k, b, k) =a * b % P = p1

3、 a1 * p2 P = p1 a1 * p2 a2* * pn 約數(shù)和: 1991 Happy O(n + n /2 + n / 3+ + n / n) HOJ2807Patting給定n(n = 10 5)個數(shù),每個數(shù)范圍1 106,對于每個數(shù)ai,輸出除ai外所有能夠整除aiHOJ2807Patting給定n(n = 10 5)個數(shù),每個數(shù)范圍1 106,對于每個數(shù)ai,輸出除ai外所有能夠整除ai的數(shù)的for i = 2; i * i N; if for i = 2; i * i N; if (tagi) forj =i;j*j -a m a mod m (a a % m = a a

4、/m * (a + b) % m a % m+ b % m mod (a - b) % m a % m- b % m mod (a *b) % m (a % m) * (b % m) mod(a / b) % m (a % m) / (b % m) mod 如何計算a / b % 定理:如果(b, m) = 1, 1如何計算a / b % 定理:如果(b, m) = 1, 1 mod 題目中通常bm且m是一個素數(shù),滿足如果b*b -11modm,那么稱b1為b在模 定b在模m下存在逆元的充要條件是(b, m) = b -1 b -1 * bb -1 b -1 * b b (m)-1) mod

5、這樣,如果(b, m)互素,求解a / b和a*b -1m就缺點:有很強的限制條件(b, m) = 如何計算a / b % 如果(b, m) != 1, 設(shè)a / b如何計算a / b % 如果(b, m) != 1, 設(shè)a / b % m有:a / b = km + 則:a = kbm + 先計算a % bm = br, 然后再除以b如何計算a / b % 每個素因子pi的個數(shù)ki (ki0)如何計算a / b % 每個素因子pi的個數(shù)ki (ki0),之后對每個素因子分別計算pi kim,最優(yōu)點:適合計算a! / b! % 缺點:a、b HOJ 2342、1528、1953 (POJ 10

6、91、POJ 1619、POJ 1845、POJ 2478、 2342、1528、1953 (POJ 1091、POJ 1619、POJ 1845、POJ 2478、 POJ2480、POJ2603、POJ2649、POJ2773、 POJ 2992、POJ 3292C(n, ans = if (k n k = nC(n, ans = if (k n k = n for (i = 1;i = k; ans = ans * (n i + 1) / 溢出,最好用long 一般n i N nnN N nnNjn-i=1ji會法語的有C人,blah blah,問至少會一種語言會法語的有C人,blah

7、blah,問至少會一種語言2, 3, 4, 1 2, 4, 3, 12, 3, 4, 1 2, 4, 3, 1 | Fnn pa1 a2 1n pa1 a2 1|Ai 2k| Ai AjAk HOJ給定n個數(shù)(n10),求m以內(nèi)有多少個數(shù)能至m = HOJ給定n個數(shù)(n10),求m以內(nèi)有多少個數(shù)能至m = 10, n= 2:3, 3, 4, 6, 89求解前n項(n 求解前n項(n 求解前n項(n 求解前n項(n 的定義所要求的f(n) = Ak-1 * f(n - 1) + Ak-2 * f(n - 2) + . + A0 * f(n-k),其中f(0).f(k-1)的初構(gòu)造k * k的矩陣

8、其中定義所要求的f(n) = Ak-1 * f(n - 1) + Ak-2 * f(n - 2) + . + A0 * f(n-k),其中f(0).f(k-1)的初構(gòu)造k * k的矩陣其中A =(Ak-1 Ak-2 . A1),I然后構(gòu)造一個k*1列向量這樣,M*b之后b0的值就是f(k),以此類推, M n * b然后構(gòu)造一個k*1列向量這樣,M*b之后b0的值就是f(k),以此類推, M n * b之后b0的值就是f(k-1+n),算法復(fù) 雜度O(k 3 * logn)。求和式:A0 + A1A2對應(yīng)圖論中的路| A I求和式:A0 + A1A2對應(yīng)圖論中的路| A I| IHOJ2471

9、 Learning = 109)H:HOJ2471 Learning = 109)H:利用輸入構(gòu)造26 * 26的鄰接矩陣題目所求為A + A2 + + A(L-、在在1. All FromeveryN- one move to a P-Fromeveryitions are P- ition,there1. All FromeveryN- one move to a P-Fromeveryitions are P- ition,thereisition,everymoveistog(x)isthesmallestnon-g(x)isthesmallestnon-egerfoundamongtheSprague-Grundyvaluesofthe followers of x.HOJ 2756Who Will Be TheA vs. B Start HOJ 2756Who

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論