Javascript
 Computer >> コンピューター >  >> プログラミング >> Javascript

JavaScriptで合計が等しい3分の1の配列


問題

最初で唯一の引数として整数の配列を受け取るJavaScript関数を作成する必要があります。この関数は、配列を合計が等しい3つの空でない部分に分割できる場合にのみtrueを返し、それ以外の場合はfalseを返す必要があります。

たとえば、関数への入力が-

の場合
const arr = [3, 3, 6, 5, -2, 2, 5, 1, -9, 4];

その場合、出力は-

になります。
const output = true;

出力の説明

なぜなら、

3 + 3 = 6 = 5 - 2 + 2 + 5 + 1 - 9 + 4

このためのコードは-

になります
const arr = [3, 3, 6, 5, -2, 2, 5, 1, -9, 4];
const thirdSum = (arr = []) => {
   const sum = arr.reduce((acc, val) => acc + val, 0);
   if(!Number.isInteger(sum / 3)){
      return false;
   };
   let count = 0;
   let curr = 0;
   const target = sum / 3;
   for(const num of arr){
      curr += num;
      if(curr === target){
         curr = 0;
         count += 1;
      };
   };
   return count === 3 && curr === 0;
};
console.log(thirdSum(arr));

出力

そして、コンソールの出力は-

になります
true

  1. 新しいキーワードでJavaScript配列を作成します。

    以下は、新しいキーワードを使用してJavaScript配列を作成するためのコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <style&

  2. JavaScript配列を条件付きで結合しますか?

    以下は、JavaScriptの条件を持つJavaScript配列のコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <style>