欧式筛求问
  • 板块学术版
  • 楼主huanglihuan
  • 当前回复7
  • 已保存回复7
  • 发布时间2025/2/1 13:12
  • 上次更新2025/2/1 21:27:13
查看原帖
欧式筛求问
794484
huanglihuan楼主2025/2/1 13:12

为什么以下代码需要运行很长时间

int d = 0;
	int n = 3000000;
	for (int i = 2;i <= n;i ++)
	{
		if (f [i] == 0) p [d ++] = i;
		for (int j = 0;j < d;j ++)
		{
			if (p [j] * i <= n) f [p [j] * i] = 1;
			else break;
			if (i % p [j] == 0) break;
		}
	}
	for (int i = 0;i < d;i ++) prime [p [i]] = 1;
2025/2/1 13:12
加载中...