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

JavaScriptで可能な製品の最大合計


正の数のarr1とarr2という2つの配列が与えられます。両方の配列の値の数は同じです。

それらの要素の積の最大合計を見つける関数を作成する必要があります。

両方の配列の各要素が1回だけ表示され、生成される積の合計が最大になるように、arr1の各要素にarr2の1つの要素を掛ける必要があります。その逆も同様です。

例:if、

arr1 = [5,1,3,4,2] and,
arr2 = [8,10,9,7,6]

その場合、可能な積の合計は-

です。
5*6 + 1*7 + 3*9 + 4*10 + 2*8

ただし、最大額ではない場合があります。

以下はコードです-

const arr1 = [5,1,3,4,2];
const arr2 = [8,10,9,7,6];
const sorter = (a, b) => b - a;
const greatestProduct = (a1, a2) => {
   if(a1.length !== a2.length){
      return false;
   };
   const a1Sorted = a1.slice().sort(sorter);
   const a2Sorted = a2.slice().sort(sorter);
   let res = 0;
   for(let i = 0; i < a1.length; i++){
      res += (a1Sorted[i] * a2Sorted[i]);
   };
   return res;
};
console.log(greatestProduct(arr1, arr2));

出力

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

130

  1. JavaScriptConst

    JavaScriptのconst宣言は、他の値に再割り当てしたり、後で再宣言したりできない変数を作成します。 ES2015で導入されました。 以下はJavaScriptconst宣言のコードです- 例 <!DOCTYPE html> <html> <head> <style>    body {       font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;    } </sty

  2. JavaScriptでのConstとLet。

    Constとletは、ブロックスコープの変数を宣言するためにES2015で導入されました。 letを使用して宣言された変数は再割り当てできますが、constを使用して宣言された場合は再割り当てできません。 以下は、JavaScriptでletとconstを示すコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="wi