欧拉算法与埃氏筛法比较

欧拉算法与埃氏筛法比较_第1张图片

 

#include
using namespace std;
bool data[100000005];
// zhishu用于存储质数的数组 ,cnt下标 
int zhishu[100000000],cnt=0;

int main()
{
	data[1] = 1;// 1表示素数 
	int n;
	cin >> n;
	// 循环遍历
	for(int i=2;i<=n;i++){
		if(data[i] == 0){
			// 表明是质数 ,追加到质数数组中 
			zhishu[++cnt] = i;
		}
			// 需要将该数字i分别与质数表中数相乘
		for(int j=1;j<=cnt&&zhishu[j]*i<=n;j++){
			data[zhishu[j]*i]=1;
			if(i%zhishu[j] == 0){
				break;
			}
		} 
	} 
	cout<

 

你可能感兴趣的:(算法,c++,开发语言)