北京大学暑期课——ACMICPC课程介绍.pdf

北京大学暑期课——ACMICPC课程介绍.pdf

此“教育”领域文档为创作者个人分享资料,不作为权威性指导和指引,仅供参考
  1. 1、本文档共53页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

北京大学暑期课《ACM/ICPC竞赛训练》

信息科学技术学院《程序设计与算法》

ACM/ICPC中的数学

郭炜/林舒

2

一些数论基本定理

(a+b)modc=

((amodc)+(bmodc))modc

(a*b)modc=

((amodc)*(bmodc))modc

3

一些数论基本定理

消去律:若gcd(c,p)=1,则

ac≡bcmodp=a≡bmodp

4

一些数论基本定理

消去律证明:

ac≡bcmodp=ac=bc+kp=

c(a-b)=kp

c和p没有除1以外的公因子=

1)c能整除k或2)a=b

如果2不成立,则c|kp

c和p没有公因子=c|k,所以k=ck

=c(a-b)=kp可以表示为c(a-b)=ckp

因此a-b=kp,得出a≡bmodp

5

快速幂取模

intPowMod(inta,intb,intc)

{//快速求a^b%c,要避免计算中间结果溢出

intresult=1;

intbase=a%c;

while(b){

if(b1)

result=(result*base)%c;

base=(base*base)%c;

b=1;

}

returnresult;

}

6

等比数列二分求和取模

2n

S=a+a+...+a

n

要求Smodp

n

如果用公式算,可能溢出,因此用二分法求

1)若n是偶数

S=a+...+an/2+an/2+1+an/2+2+...+an/2+n/2

n

n/2n/2n/2

=(a+...+a)+a(a+...+a)

=S+an/2S

n/2n/2

=(1+an/2)Sn/2

7

等比数列二分求和取模

2)若n是奇数

S=a+...+a(n-1)/2+a(n-1)/2+1+...

n

+a(n-1)/2+(n-1)/2+a(n-1)/2+(n-1)/2+1

=S(n-1)/2+a(n-1)/2(a+...+a(n-1)/2)+an

=(1+a(n-1)/2)S(n-1)/2+an

8

等比数列二分求和取模

intPowSumMod(inta,i

文档评论(0)

风中路标 + 关注
实名认证
内容提供者

学习资料分享

1亿VIP精品文档

相关文档