javascript - 创建一个数组,其中包含对特定数字求和所需的数字

标签 javascript arrays node.js

<分区>

我想创建一个数组,其位置的总和给出特定数字的结果。

较大的数字必须从数组的开头开始填充,如果需要则用 0 填充,并尽可能均匀分布。

比如某些场景的预期结果:

const array = new Array(4);
const number = 4;
// Expected result -> [1, 1, 1 ,1]
const array = new Array(5);
const number = 17;
// Expected result -> [4, 4, 3, 3 ,3]
const array = new Array(7);
const number = 2;
// Expected result -> [1, 1, 0, 0, 0, 0, 0]

使用 Javascript 获取此数组的最有效方法是什么?

请注意,示例中的数字较小。一个真实的例子会使用更大的数字,比如:

const array = new Array(52);
const number = 3215654;

关于可能的重复问题,这个问题需要与其他用户指出的问题不同的结果顺序,因此逻辑在这里不可行。

最佳答案

出于纯粹的好奇心,我想尝试一下,这是我想出的:

const arrayLength = 5;
let number = 17;

const arr = [];
for(let i=arrayLength; i>0; i--){
  const n = Math.ceil(number/i);
  arr.push(n);
  number -= n;
}
console.log(arr);//[ 4, 4, 3, 3, 3 ]

将数字平均分配似乎是答案。

关于javascript - 创建一个数组,其中包含对特定数字求和所需的数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56886148/

相关文章:

javascript - 如何使用 Javascript/CSS 创建一个开/关开关?

javascript - jquery slideDown,slideUp摆动

jQuery inArray() 定位 HTML 元素

node.js - 如何在 Heroku 上使用 Strongloop 部署 Node.js 应用程序?

Javascript:对嵌套 for 循环的工作方式感到困惑

javascript - 为什么 jQuery 返回整数而不是对象?

c - 为什么我从这段代码中得到一串看似随机的数字?

javascript - 与nodejs、mongoose 和 JSON 对象数组拼接

node.js - 如何使用 selenium javascript 和 node.js 迭代 html 表

node.js - Mongoose - 从子文档数组中获取单个字段