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

JavaScriptで可能な最大ペア合計を達成する


問題

最初で唯一の引数として長さ2nの整数の配列arrを受け取るJavaScript関数を作成する必要があります。

この関数のタスクは、これらの整数をn組の整数にグループ化することです。たとえば、(a1、b1)、(a2、b2)、...、(an、bn)は、すべてのmin(ai、bi)の合計になります。 iは1からnまで可能な限り大きくします。

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

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

その場合、出力は-

になります。
const output = 4;

出力の説明

nは2で、ペアの最大合計は4 =min(1、2)+ min(3、4)です。

以下はコードです-

const arr = [1, 4, 3, 2];
const pairSum = (arr = []) => {
   arr.sort((a, b) => a - b)
   let sum = 0
   for (let i = 0; i < arr.length; i += 2) {
      sum += Math.min(arr[i], arr[i + 1])
   }
   return sum
}
console.log(pairSum(arr));

出力

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

4

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

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

  2. JavaScriptを使用した配列内の山​​の最大長

    山のサブシーケンス 次のプロパティが当てはまる場合、(arrの)サブアレイサブを山と呼びます- =3 sub [0]