计算数字的除数

问题描述 投票:0回答:1

我正在创建一个函数,它将返回参数数字有多少个除数。

我有两种代码变体,代码通过了简单和中等数字的测试,但对于高数字,工具显示错误并要求我编写更有效的代码,因为服务器执行代码的时间太长,但我被困在这里。如何编写更干净的代码。

function getDivisorsCnt(n) {

  let count = 0;
  for (let i = 0; i <= n; i++) {
    if (n % i == 0) {
      count++;
    }
  }
  return count;
}

在第二种变体中,服务器还显示大数字的错误

function getDivisorsCnt(n) {
  var result = [];
  for (let i = 0; i <= n; i++) {
    if (n % i == 0) {
      result.push(i);
    }
  }
  return result.length;
}
javascript count numbers coding-style
1个回答
0
投票

您的意思是整数分解吗? 对于大数字来说,这是一项艰苦的工作。如果你这样做,你就会破坏 RSA 算法

© www.soinside.com 2019 - 2024. All rights reserved.