正整数因式分解在线工具
每个正整数,也称为自然数,都可以被表示为质数的N方乘积。比如:12 = 2 * 2 * 3 或者 22 * 31. 这里 2 和 3 就是质数。每个正整数都能唯一被这种方式表达。这个过程就是因数分解(分解为质因数)。
因式分解的 Python 算法如下:先从第一个质数2开始,如果能刚好被整除,就不断的除,然后再换下一个质数因子。
def factor(n):
p = next_prime() # 得到第一个质数 2
while n > 1:
while n % p == 0:
print(p)
n /= p
p = next_prime() # 获取下一个质数 3, 5, 7...
本页提供了一个在线的因数分解的工具,(英文界面) 可以同时分解多个正整数。并且还支持大整数的因数分解。比如可以用来很容易的解决这个问题: 做题送美人 Python 题解: (两质数相乘等于 707829217)
正整数质因数分解 (API)
我们提供了以下好用的质数因子分解 API接口:
API example:
https://api.justyy.workers.dev/api/factor/?cached&n=9223372036854775807
returns:
{
"result": "9223372036854775807: 7 7 73 127 337 92737 649657",
"cached": false
}
可以同时传入多个整数,按空格分开:
API example:
https://api.justyy.workers.dev/api/factor/?cached&n=1+2+3+4+5
returns:
{
"result": "1:\n2: 2\n3: 3\n4: 2 2\n5: 5",
"cached": false
}
我们可以按 POST方式来传递参数:
? curl -s -X POST https://api.justyy.workers.dev/api/factor/ -d "n=9223372036854775807"
{
"result": "9223372036854775807: 7 7 73 127 337 92737 649657",
"cached": false
}
POST方式结果将不会被 CloudFlare CDN缓存, 而 GET 方法会通过 ?cached 标记来缓存于CLOUDFLARE节点上.
因子分解API服务器
以下服务器都可以提供因子分解的API接口服务.
- 负载均衡服务器: https://api.justyy.workers.dev/api/