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

JavaScriptの各インデックスでの累積合計


数値の配列を受け取るJavaScript関数を作成する必要があります。この関数は、特定のインデックスに対して、そのインデックスまでのすべての数値の合計を含む新しい配列を作成して返します。

例-

入力配列が-

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

その場合、出力は-

になります。
const output = [1, 3, 6, 10, 15];

動的プログラムを使用して、各反復の合計を追跡し、対応する要素を合計に追加するだけで、新しい要素を取得できます。

以下はコードです-

const arr = [1, 2, 3, 4, 5];
const cumulativeSum = arr => {
   let result = [arr[0]];
   for(let i = 1; i < arr.length; i++) {
      result.push(arr[i] + result[i-1]);
   }
   return result;
}
console.log(cumulativeSum(arr));

出力

以下はコンソールでの出力です-

[ 1, 3, 6, 10, 15 ]

  1. JavaScriptのパーティションの平均の最大合計

    問題 最初の引数として数値の配列arrを取り、2番目の引数として数値num(num <=arrのサイズ)を受け取るJavaScript関数を作成する必要があります。 この関数は、要素を残さないように、配列arrを最大でnum個の隣接する(空でない)グループに分割する必要があります。 このようなすべてのパーティションから、すべてのグループの平均の合計が最大になるパーティションを関数で選択する必要があります。 そして最後に、この最大の金額を返す必要があります。 たとえば、関数への入力が 入力 const arr = [10, 2, 3, 4, 10]; const num = 3;

  2. JavaScriptで配列の中央値インデックスを見つける

    問題 1次元空間内のさまざまな小惑星の位置を表す配列arrを取り込むJavaScript関数を作成する必要があります。 各小惑星について、絶対値はそのサイズを表し、符号はその方向を表します(正の意味は右、負の意味は左)。各小惑星は同じ速度で移動します。 私たちの機能は、すべての衝突後の小惑星の状態を見つけることになっています。 2つの小惑星が出会うと、小さい方の小惑星が爆発します。両方が同じサイズの場合、両方が爆発します。同じ方向に移動する2つの小惑星が出会うことはありません。 たとえば、関数への入力が-の場合 入力 const arr = [1, 7, 3, 6, 5, 6];