问题标签 [sieve]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
425 浏览

c - 埃拉托色尼筛程序的分段错误

我正在尝试实现筛算法,它会询问连续数字列表的大小并打印出该列表中的素数,但我遇到了 seg fault: 11 错误。

这是我的代码:

0 投票
1 回答
63 浏览

c - 未打印埃拉托烯筛的所需输出

我正在尝试创建一个程序,它在给定输入值 n 的情况下输出素数列表。

我制作的 SieveEratosthenes 函数: - 在前 n 个整数上生成素数列表 - 为生成的素数列表创建存储空间 - 返回生成的素数的数量。

这是我的主要功能中的代码:

说 n = 20; 我的输出是:

'生成了一个包含 8 个素数的列表

2 3 5 7 11 13'

当我想要的输出应该是'2 3 5 7 11 13 17 19'

我的筛子功能工作正常,但我无法在我的主要功能中打印出整个素数列表。

任何帮助将非常感激。谢谢!

0 投票
1 回答
174 浏览

c++ - 从 Codechef March Long Contest 获得 ANUGCD 中的 WA

我在Codechef March Long Contest的问题GCD 条件中获得 WA 。 请告诉我我做错了什么或代码产生错误答案的一些测试用例。

问题链接

我对每个素数都使用了 RMQ(范围最大查询)


首先,我已转换为如下结构:-

示例输入:- 10 6 20 15 8

(b[i]-->存储 i 的因子的索引)

b[2]--> 1,2,3,5
b[3]--> 2,4
b [5]--> 1,3,4


现在实现RMQ后,如下:-



(cc[i][j][k] 存储 b[i][j] 和 b[i][j+(2^k)-1] 之间最大元素的索引)

cc[2][0]-- >1,2,3,5
cc[2][1]-->1,3,3
cc[2][2]-->3

cc[3][0]-->2,4
cc[3][1]-->4

cc[5][0]-->1,3,4
cc[5][1]-->3


我的代码

0 投票
1 回答
189 浏览

c++ - C ++如何在头文件中使用cpp文件中的函数

我在一个名为 bitarray.h 的头文件中有一个类和一个相应的 bitarray.cpp,我也有一个 sieve.h。sieve.h 和 bitarray.cpp #includes bitarray.h 和 sieve.h 只有一个函数 void Sieve(BitArray a)。我想从 Sieve 函数调用在 bitarray.h 中声明并在 bitarray.cpp 中定义的 Set() 和 Unset() ,但它不会让我这样做。我该如何解决。

0 投票
1 回答
44 浏览

c - 初筛无输出

我正在尝试使用筛子打印出一组特定的素数,但我似乎没有得到任何输出,但它编译得很好。除非我强迫它,否则程序不会退出,所以我猜它卡在某个地方......我该如何解决这个问题?

0 投票
2 回答
815 浏览

c++ - 二次筛 - o(1) 代表什么?

我正在尝试实现二次筛,我注意到我需要选择一个平滑界 B 来使用这个算法。我在网上发现 B 也代表 exp((1/2 + o(1))(log n log log n)^(1/2)) 但现在我的问题是 o(1)。你能告诉我 o(1) 代表什么吗?

0 投票
4 回答
105 浏览

java - 埃拉托色尼筛 - 实现返回一些非质数?

我从伪代码用 Java 实现了 Eratosthenes 筛:

当我是 15 时,它给我的输出:

为什么其中一些值不正确?我相信我的错误在于我如何定义和使用 bool 数组。谢谢!

0 投票
2 回答
184 浏览

go - 在这个例子中通道是如何工作的?

这是素数筛的一个例子

我理解的是这行代码

通道正在等待输入并分配给素数。那么,为什么在调用下一条语句时不打印所有数字

如果我删除最后 3 行

然后所有数字都从 2 打印到 11。这条线 ch = ch1 做什么?

谢谢

0 投票
1 回答
317 浏览

c - AT&T 大会中的埃拉托色尼筛

我用 C 语言编写了一个简单的程序,使用埃拉托色尼筛法查找给定范围内的所有素数。在学校,我们目前正在上课学习汇编,但我不知道如何编写三个循环。我在 NASM 中有所了解,我之前曾摆弄过,但我们必须使用 AT&T。有什么建议我可以用“void sieve()”做什么?

0 投票
1 回答
400 浏览

haskell - 不包括 Sundaram 筛子的数字

我正在努力实施Sundaram 的筛子

第一步是获取一个整数列表,这样:

i, j 是自然数,1 <= i <= j

i + j + 2*i*j <= n

这是我的功能。它应该生成(i, j)符合上述限制的所有 's 的元组列表。

但是我的回答中没有得到非质数。排除我的其他工作,我认为我在生成这个整数列表时犯了一个错误。

请让我知道我做错了什么。