Problem W: 筛选法求素数(一维数组、循环、数组初始化)
Memory Limit:128 MB
Time Limit:1.000 S
Judge Style:Text Compare
Creator:
Submit:11
Solved:10
Description
筛选法求素数(质数)是一种高效求素数的方法,其具体算法如下:
从2开始把连续的整数放入筛中,首先确定筛中第一个数2是素数。并从筛中筛去所有2的倍数(不包括2);然后从2以后开始查找,找到筛中剩下的第一个数,它也是素数,并从筛中筛去它的所有倍数(不包括本身)。如此反复执行,直到无数可筛为止。这时筛中剩下的这一串就是素数。
从2开始把连续的整数放入筛中,首先确定筛中第一个数2是素数。并从筛中筛去所有2的倍数(不包括2);然后从2以后开始查找,找到筛中剩下的第一个数,它也是素数,并从筛中筛去它的所有倍数(不包括本身)。如此反复执行,直到无数可筛为止。这时筛中剩下的这一串就是素数。
Input
输入一个整数n(1<=n<1000)
Output
从小到大输出素数,每行1个素数。
Sample Input Copy
12
Sample Output Copy
2
3
5
7
11
HINT
提示:
质数又称素数。一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做质数;否则称为合数(规定1既不是质数也不是合数)。素数:2、3、5、7、11、......
可以用一个数组a作为筛,数组的下标代表连续的整数,若储存的是0时,代表不在筛中,储存的是1时,代表在筛中。如a[2]=1代表整数2在筛中。
本题中要求输入一个数n,输出2到n中的所有素数。
视频讲解:https://www.bilibili.com/video/BV1nL411E7Vy/?spm_id_from=333.788.videopod.episodes&vd_source=ed609f9463861996afb742d2bd8b5a46&p=10
质数又称素数。一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做质数;否则称为合数(规定1既不是质数也不是合数)。素数:2、3、5、7、11、......
可以用一个数组a作为筛,数组的下标代表连续的整数,若储存的是0时,代表不在筛中,储存的是1时,代表在筛中。如a[2]=1代表整数2在筛中。
本题中要求输入一个数n,输出2到n中的所有素数。
视频讲解:https://www.bilibili.com/video/BV1nL411E7Vy/?spm_id_from=333.788.videopod.episodes&vd_source=ed609f9463861996afb742d2bd8b5a46&p=10