gpt4 book ai didi

javascript - Coderbyte 上的数组加法 I JavaScript 函数

转载 作者:行者123 更新时间:2023-11-28 15:15:38 25 4
gpt4 key购买 nike

我正在 Coderbyte 上进行挑战,如果您对我的问题提出任何建议,我将不胜感激:

给我的挑战:“使用 JavaScript 语言,具有函数 ArrayAdditionI(arr)获取存储在 arr 中的数字数组并返回字符串 true if数组中任意数字的组合可以相加等于数组中最大的数字,否则返回字符串 false。例如:如果 arr 包含 [4, 6, 23, 10, 1, 3] 则输出应为返回 true,因为 4 + 6 + 10 + 3 = 23。数组不会为空,不会包含所有相同的元素,并且可能包含负数。 ”

我尝试解决它的方式:http://jsfiddle.net/reLsg0fg/

function ArrayAdditionI(arr){
var newArr=arr.sort(); // sorted from smallest to largest.
var largestNum=newArr.slice(-1); // Gets the last number, which would be the largest.
var loopArr=arr.sort().pop(); // Takes out the largest number for adding later.
var result=0;

for(var i=0; i<loopArr.length; i++){ // loops through all numbers.
if(result/largestNum !== 1){ //when you divide a number by itself it will be 1.
result+=loopArr[i]; // keep adding each number until get largest number.
}else if(result === largestNum){
return true;
}
}
return false;
}


// TESTS
console.log("-----");
console.log(ArrayAdditionI([4,6,23,10,1,3]));
console.log(ArrayAdditionI([5,7,16,1,2]));
console.log(ArrayAdditionI([3,5,-1,8,12]));

我应该得到真、假、真。但我得到了错误、错误、错误,就好像我的循环中出现了问题。 JSFiddle:http://jsfiddle.net/reLsg0fg/

如有任何建议,我将不胜感激。谢谢^^

最佳答案

使用对数组进行排序

arr.sort(function (a, b) { return a - b })

关于javascript - Coderbyte 上的数组加法 I JavaScript 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34103749/

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