持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第5天,点击查看活动详情
符号说明
符号 | 说明 |
|---|
N | 全体自然数,即正整数组成的集合: 1,2,3,...,n,n+1,... |
Z | 全体整数组成的集合: ...,−n−1,−n,...,−2,−1,0,1,2,...,n,n+1,... |
Z[x] | 全体一元整系数多项式组成的集合 |
a∣b | a 整除 b |
a∤b | a 不整除 b |
p,p′,p1,p2,... | 表素数(不可约数) |
ak∥b | ak∣b,ak+1∤b |
(a1,a2) | a1 和 a2 的最大公约数 |
(a1,a2,...,ak) | a1,a2,...,ak 的最大公约数 |
[a1,a2] | a1 和 a2 的最小公倍数 |
[a1,a2,...,ak] | a1,a2,...,ak 的最小公倍数 |
δm(a) | a 对模 m 的指数 |
[x] | 实数 x 的整数部分 |
{x} | 实数 x 的小数部分 |
∑n≤x (∑n<x) | 对不超过(小于)实数 x 的正整数 n 求和 |
∑p≤x (∑p<x) | 对不超过(小于)实数 x 的素数 p 求和 |
∑d∣a (∏d∣a) | 对 n 的所有正除数 d 求和(积) |
∑p∣a (∏p∣a) | 对 n 的所有素除数 p 求和(积) |
自然数与整数
归纳原(公)理 设 S 是 N 的一个子集,满足条件:
- 1∈S;
- 如果 n∈S,则 n+1∈S,
那么 S=N
数学归纳法 设 P(n) 是关于自然数 n 的一种性质或命题,如果
- 当 n=1 时,P(1) 成立;
- 由P(n) 成立必可推出 P(n+1) 成立,
那么 P(n) 对所有自然数成立。
第二种数学归纳法 设 P(n) 是关于自然数 n 的一种性质或命题,如果
- 当 n=1 时,P(1) 成立;
- 对 n>1 时,若对所有的自然数 m<n,P(m) 成立,则必可推出 P(n) 成立,
那么 P(n) 对所有自然数 n 成立。
鸽巢原理 设 n 是一个自然数,现有 n 个盒子和 n−1 个物体,无论如何把这 n+1 个物体放入这 n 个盒子中,一定有一个盒子中被放了两个或两个以上物体。
整除的基本知识
整除的定义与基本性质
整除 设 a,b∈Z,a=0。若存在 q∈Z,使得 b=aq,那么就说 b 可以被 a 整除,记作 a∣b,且称 b 是 a 的倍数,a 是 b 的约数。b 不能被 a 整除记作 a∤b。
整除的性质
- a∣b⇔−a∣b⇔a∣−b⇔∣a∣∣∣b∣
- (a∣b)∧(b∣c)⇒a∣c
- (a∣b)∧(a∣c)⇒a∣(bx+cy),∀x,y∈Z
- 设 m=0,则 a∣b⇔ma∣mb
- (a∣b)∧(b∣a)⇒b=±a
- 设 b=0,则 a∣b⇒∣a∣≤∣b∣
- 设 a=0,b=qa+c,则 a 整除 b 的充分必要条件是 a 整除 c
素数与合数
素数 设整数 p=0,±1,且除了 ±1,±p外没有其他约数,则称 p 为素数。若整数 a=0,±1,且不是素数,则称 a 为合数。
为了方便,以后若无特殊说明,素数总是指正的。
一个整数的除数如果是素数,这个除数就称为该整数的素因数。
唯一分解定理 设整数 a>2,那么 a 一定可以表示为素数的乘积,即
a=p1p2...ps,其中 pj(1≤j≤s)是素数。且该表示式在不记 pj(1≤j≤s) 次序的一一下是唯一的。
以下是用C语言分解质因数的代码实现。
#include <stdio.h>
int p[101],tot;
void getsplit(int a)
{
tot=0;
int x=a;
for (long long i=2;i*i<=x;++i)
while (x%i==0) p[++tot]=i,x/=i;
if (x>1) p[++tot]=x;
printf("%d=%d",a,p[1]);
for (int i=2;i<=tot;++i) printf("*%d",p[i]);
}
int main()
{
int a;
scanf("%d",&a);
getsplit(a);
return 0;
}