数论部分知识点

手动置顶

(0)数论四大定理

①威尔逊定理
(p-1)! ≡-1(mod p),p 为质数
证明:2…p-2中恰好有偶数个数,两两配对后的乘积模p都是等于1,再乘上p-1,即-1,所以(p−1)!≡−1
补充:
p = 4时: (p-1)!%p ≡ 2
p > 4 && p 为合数:(p-1)!%p ≡ 0
应用 Uva1434

②欧拉定理
a^φ(n) ≡ 1 (mod n) ,a, n 互质
φ(n)=n (1-1/p(1)) (1-1/p(2)) (1-1/p(3)) (1-1/p(4))……(1-1/p(n))
其中p(1),p(2)…p(n)为n的所有质因数,n是正整数,φ(1)=1(唯一和1互质的数,且小于等于1)。每种质因数只有一个。
欧拉函数的性质https://www.jianshu.com/p/8a27f0462d09

应用:求逆元 a ^(-1) = a ^(φ(n)-1) (mod n) n为质数的时候,就是a ^(n-2)

③孙子定理(中国剩余定理)
在这里插入图片描述
④费马小定理
a^(p-1)≡1(mod p) p为质数,a,p互质
应用:
求逆元 a ^ (-1) = a ^ (p-2)
a^p = p(mod p) : 模p意义下,(m+n) ^p = m ^p + n ^p

⑤费马大定理
当整数n >2时,关于x, y, z的方程 x ^ n + y ^ n = z ^ n 没有正整数解
而对于x ^ 2+y ^ 2=z ^ 2
eg.HDU 6441 find 2 integers b,c such that an+bn=cn

	if(x&1){
        y = (x*x-1)/2;
        z = (x*x+1)/2;
    }
    else{
        y = x*x/4-1;
        z = x*x/4+1;
    }

⑥裴蜀定理
对于给定的正整数a,b,方程ax+by=c有解的充要条件为 c 是gcd(a, b)的整数倍

(1) a, b 最大不能组合的数 = ab - (a+b)

(2) 与 n 互质的数对 n 取模具有周期性(不一定从1到n)
部分应用:
① 给出m和k求出第k个与m互素的数
如果知道欧几里德算法的话就应该知道gcd(b×t+a,b)=gcd(a,b) (t为任意整数)
则如果a与b互素,则b×t+a与b也一定互素,如果a与b不互素,则b×t+a与b也一定不互素
故与m互素的数对m取模具有周期性,则根据这个方法我们就可以很快的求出第k个与m互素的数
假设小于m的数且与m互素的数有 cnt 个,其中第i个是a[i],则第 k 个与m互素的数是 k/cnt * m + a[k%cnt]

(3) 质因子分解定理,任何正数都能被分解成多个质数的幂次乘积的形式
N=(p[1] ^ e[1])(p[2] ^ e[2])……(p[k]^e[k])
N 的因子数量 :FactorNumber(N)=(e[1]+1)(e[2]+1)……(e[k]+1)

部分应用 :
①FactorNumber(N)是奇数的条件 :
e[1],e[2],……,e[k]都是偶数——这样才能保证e[i]+1是奇数,结果乘积才能是奇数。而由于e[1],e[2],……,e[k]都是偶数,那么N一定是一个完全平方数(因为sqrt(N)=(p[1] ^ (e[1]/2)) ( p[2] ^ (e[2]/2))…… * (p[k]^(e[k]/2))是整数)

② n! 末尾 0 的个数
设 N = n! = p*10^k, 求 k 的值
根据唯一分解定理, N = 2^a1 * 5^a2 * …
2 * 5 = 10 是 0 的来源
所以 k = min(a1, a2),显然 a2 < a1 , 所以可以转化题意为求 a2

(4)从1~N中任选出三个数,他们的最小公倍数最大可以为多少
奇数N : n * (n-1) * (n-2)
偶数N :
非 3 的倍数 n * (n-1) * (n-3)
3 的倍数(n-1) * (n-2) * (n-3)

(5)两个完全平方数的差符合的条件:设 m = a ^ 2 - b ^ 2 = (a+b)(a-b)
那么有 m = 4k (==> 推出一组a、b解: a = k+1, b = k-1)
或 m = 2k+1 (推出一组a、b解: a = k, b = k-1)

(6)错排,递推公式:d[n] = (n-1) * (d[n-1]+d[n-2]) 初始值:d[1] = 0, d[2] = 1;
组合数学中的问题之一。考虑一个有n个元素的排列,若一个排列中所有的元素都不在自己原来的位置上,那么这样的排列就称为原排列的一个错排

(7) 各类排列组合
https://www.cnblogs.com/Euryale-Rose/p/6527841.html
(8) 别人的数论总结
https://blog.csdn.net/vanillayi/article/details/83176298

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
CSPS初赛知识点整理主要涵盖学、计算机科学和信息技术等多个领域。其中,学是CSPS竞赛的重要组成部分,涉及的知识点包括数论、代、几何、概率与统计等。在数论方面,需要掌握素数、质因分解、欧几里得算法、同余和模运算等相关概念和定理。在代方面,需要了解多项式运算、方程与不等式、函与图像等内容。在几何方面,需要熟悉平面几何的基本理论、线性代的知识以及空间几何的相关概念。在概率与统计方面,需要了解随机事件、概率计算、统计推断、据分析等内容。 此外,CSPS初赛还需要掌握计算机科学和信息技术方面的知识。在计算机科学方面,需要了解算法与据结构、计算机组成原理、操作系统、编程思想等内容。在算法与据结构方面,需要熟悉常见的据结构如组、链表、栈、队列、树、图等,并能应用各种算法进行问题的解决。在计算机组成原理方面,需要了解计算机的基本组成部分,包括CPU、存储器、输入输出设备等,并能了解各个组件的工作原理。在操作系统方面,需要了解操作系统的基本概念和功能,如进程管理、内存管理、文件系统等。在编程思想方面,需要掌握面向对象编程、函式编程、并发编程等基本思想。 在信息技术方面,需要了解网络与通信、据库管理系统等相关知识。在网络与通信方面,需要了解互联网的基本组成和架构、网络协议、网络安全等内容。在据库管理系统方面,需要了解据库基本概念、关系模型、SQL语言和常见的据库管理系统等知识。 综上所述,CSPS初赛知识点整理包括学、计算机科学和信息技术等多个领域的知识。掌握这些知识点将有助于参赛者在竞赛中取得优异的成绩。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值