gpt4 book ai didi

algorithm - 计算与 n 互质且小于 m 的数

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:47:35 25 4
gpt4 key购买 nike

计算与 n 互质且小于 m 的数, m

我想通过(phi(n)/n)*m来做这个,但是总是有一些小错误。

一种方法可以使用包含 - 排除原则,但我正在寻找比这更好的算法。

例如

n = 20 m = 10
{1, 3, 7, 9}
Ans = 4

最佳答案

首先你可以找到所有 x < m 的 x 是质数并且 x 是 n 的约数。它是在 O(m * (x.count)) 中计算的

i = 1;

while x[i] not empty do
{
j = 1;

while x[i] * j < m
{
s[(x[i] * j)] = false;
j++;
}

i++;
}

现在你可以找到所有 s[k] 满足 s[k] = true。

O(m)计算

所以你可以在 O(m * (x.count)) 中完成所有步骤

关于algorithm - 计算与 n 互质且小于 m 的数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13931628/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com