数论
素数及唯一分解定理
什么是素数
在信息学竞赛所涉及的数学领域里,素数(也叫质数)是一类非常关键的数。一个大于 1 的自然数,要是除了 1 和它自身之外,无法被其他自然数整除,那么这个数就被定义为素数。例如 2、3、5、7、11 等都是素数。与之相对,若一个大于 1 的自然数除了 1 和它自身外,还能被其他自然数整除,这样的数就被称作合数。像 4 能被 2 整除,6 能被 2 和 3 整除,所以 4 和 6 是合数。而 1 既不属于素数,也不属于合数。
唯一分解定理及其证明
唯一分解定理内容
唯一分解定理,也被叫做算术基本定理。该定理表明,任何一个大于 1 的自然数 ,如果 不是素数,那么 可以唯一地分解成有限个素数的乘积,即 ,这里 均为素数,并且指数 是正整数。例如 ,这种分解形式是唯一的。
证明思路
- 存在性证明: 可以采用数学归纳法来证明任何大于 1 的自然数都能分解成素数的乘积。
- 当 时, 本身就是素数,分解形式为 ,满足分解成素数乘积的形式。
- 假设对于所有小于 的自然数都能分解成素数的乘积。若 是素数,那么 本身就是一种素数分解形式;若 是合数,那么 可以写成 ,其中 。根据归纳假设, 和 都能分解成素数的乘积,所以 也能分解成素数的乘积。
- 唯一性证明: 假设存在一个大于 1 的自然数 ,它有两种不同的素数分解形式 。因为 ,所以 ,根据素数的性质, 必定等于某个 。不妨设 ,那么等式两边同时除以 ,得到 。重复这个过程,最终可以证明两种分解形式是完全相同的,即分解是唯一的。
怎么判断素数(附带例题及代码)
暴力判断法
原理
对于一个数 ,从 2 开始到 进行遍历,如果 能被其中任何一个数整除,那么 就不是素数,否则 是素数。这是因为如果 有一个大于 的因数 ,那么必然存在一个小于 的因数 。
例题
题面:给定一个整数 ,判断它是否为素数。 输入输出样例:
- 输入:一个整数 。 示例输入:
- 输出:如果 是素数,输出
Yes
,否则输出No
。 示例输出:
代码实现
示例代码
例题
Status
Problem
Tags