问题标签 [prime-factoring]

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 投票
4 回答
10100 浏览

java - 大数的素数分解

我想找到小于 10^12 的大数的素数分解。我得到了这段代码(在java中):

首先,上述算法的复杂性是什么??我很难找到它??

对于素数的大数来说,它也太慢了。

有没有更好的算法,或者如何优化这个算法?

0 投票
2 回答
273 浏览

cryptography - RSA 的创建者可以读取所有编码的消息吗?

根据此页面http://en.wikipedia.org/wiki/RSA_numbers ,每个 RSA 版本都使用一个难以分解的常量长数字。

这是正确的吗?

例如,RSA-100 使用数字

这是在 1991 年考虑的。

同时 RSA-210 使用数字

尚未考虑在内。

我的问题是:这是否意味着任何特定 RSA 版本的创建者都知道因子编号并因此可以读取所有编码消息?如果他们不知道分解,那么他们如何生成一个数字?

0 投票
1 回答
306 浏览

wolfram-mathematica - 找到所有第一个连续的素因子并找到 Mathematica 的最大值

2|n, 3|n,..., p_i|n, p_j|n,..., p_k|n

p_i < p_j< ... < p_k

其中直到 p_i 的所有素数除以 n 和

j > i+1

我想在 Mathematica 中编写代码来查找 p_i 并确定 {2,3,5,...,p_i}。

谢谢。

B = {};

n = 2^6 * 3^8 * 5^3 * 7^2 * 11 * 23 * 29;

对于[i = 1, i <= k, i++,

If[Mod[n, Prime[i]] == 0, AppendTo[B, Prime[i]]

If[Mod[n, Prime[i + 1]] > 0, Break[]]]];

mep1=最大[B];

mep1

结果是

{2,3,5,7,11}

11

我想编写代码而不是 B 来获得 B[n],因为我需要为给定的 n 绘制 mep1[n] 的图形。

0 投票
3 回答
11689 浏览

primes - Project Euler 3 - 为什么这种方法有效?

13195 的质因数是 5、7、13 和 29。数字 600851475143 的最大质因数是多少?

我以自己的方式在 Project Euler 上解决了这个问题,速度很慢,然后我在某人的 github 帐户上找到了这个解决方案。我不知道为什么它有效。为什么去除了许多因子,等于一个索引?有什么见解吗?

0 投票
1 回答
959 浏览

java - 给定一个数字,构建一个二维网格的程序

该程序的目标是创建一个二维值网格。作为用户的输入,我们得到网格中存在的元素总数(例如,n)。我们需要构建一个包含 n 个值的二维网格(这些值从 0 开始是连续的,即 0,1,2,3,4,5,6..n)

以下是我到目前为止所管理的:

上面的代码适用于完全平方数,也适用于“n”为偶数的少数其他情况。但是如果'n'是奇数并且对于'n'的少数其他偶数值,例如n = 10,它会失败。

您能否建议一种更好的构建网格的方法?

0 投票
2 回答
310 浏览

wolfram-mathematica - 在 Mathematica 中找到具有相同幂的数的质因数集的最小值和最大值

n=2^10 3^7 5^4...31^2...59^2 61...97

是一个整数的因式分解,使得素数的幂是不增加的。

我想在 Mathematica 中编写一个代码来找到 n 的素数因子的最小值和最大值,以使它们具有相同的功率。例如,我想要一个函数,它通常采用 r(幂)并给出(最多两个)素数。上述示例的具体答案是

minwithpower[7]=3

最大功率[7]=3


minwithpower[2]=31

最大功率[2]=59

请有任何想法。

0 投票
2 回答
13328 浏览

c - 快速素数分解算法

我正在用 C 编写一个代码,它返回一个正整数可以表示为两个正整数的完全平方和的次数。

要计算 R(n),我需要首先找到 n 的素数分解。

问题是我已经尝试了很多可以在 C 上使用的素数分解算法,但我需要我的代码尽可能快,所以如果有人能给我他/她认为的内容,我将不胜感激计算一个数的素数分解的最快算法2147483742.

0 投票
1 回答
174 浏览

pascal - 以下帕斯卡代码中的运行时错误

我正在尝试分解给定的数字a,因此我编写了以下 Pascal 代码:

但是当我运行它时,它给了我错误 200 或运行时错误,但我无法确定是什么问题。我使用 k 作为 b 数组中因子数的长度。我应该认为索引 k 有什么问题吗?

0 投票
3 回答
463 浏览

performance - 一个数的除数不小于另一个数

是否有任何有效的方法来找到一个数字(比如 n)的除数不小于另一个数字(比如 m)。n 可以达到 10^12。我考虑了筛算法然后找到除数的数量。我的方法检查从 m 到 n 平方根的所有数字。但我认为还有另一种方法(有效)可以做到这一点。

0 投票
1 回答
732 浏览

python - 素数分解+优化中的递归问题

我正在为任意数量的因子创建一个模块。在其中,我还有两个函数(一个导致调用另一个)来找到数字 n 的素数分解。

出现的问题是递归错误(如果我对递归的定义是正确的)。当我为一个数字调用该函数时,它会打印所有的质因数,然后将最后两个质因数相加并再次打印,并重复执行此操作,显然没有尽头。

到目前为止我的代码:

当我输入(在 Shell 中)时:primeFactors(600851475143)<---这原本是针对 Project Euler

预期输出(我已经解决了问题):[71, 839, 1471, 6857L]

实际输出:

它一遍又一遍地执行此操作,将 1471 和 6857L 附加到列表中,然后再次打印。然后,它再次添​​加所有主要因素,然后再次打印。不知道为什么会这样。非常感谢任何输入。另外,如果有任何方法可以使此代码更快/更 Pythonic,请告诉我 :) 谢谢