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

JavaScriptで必要な組み合わせを生成する


この関数は、1から9までの数字しか使用できず、各組み合わせが一意の数字のセットであるとすると、合計が数字nになるm個の数字のすべての可能な組み合わせを見つける必要があります。

例-入力が-

の場合
const m = 3, n = 4;

その場合、出力は-

になります。
const output = [
   [1, 2, 4]
];

入力が-

の場合
const m = 3, n = 9;

その場合、出力は-

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

このためのコードは-

になります
const m = 3, n = 9;
const findSum = (m, n) => {
   const search = (from, prefix, m, n) => {
      if (m === 0 && n === 0) return res.push(prefix);
      if (from > 9) return;
      search(from + 1, prefix.concat(from), m − 1, n − from);
      search(from + 1, prefix, m, n);
   };
   const res = [];
   search(1, [], m, n);
   return res;
};
console.log(findSum(m, n));

出力

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

になります
[ [ 1, 2, 6 ], [ 1, 3, 5 ], [ 2, 3, 4 ] ]

  1. JavaScriptのescape()

    JavaScriptのescape()関数は、文字列のエンコードに使用されます。 JavaScript1.5では非推奨です。 以下は、JavaScriptのescape()のコードです。 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /

  2. JavaScript DataView()

    JavaScript DataViewを使用すると、低レベルのインターフェイスを提供することにより、バイナリArrayBufferで複数の数値タイプの読み取りと書き込みを行うことができます。 DataView()を使用せずにArrayBufferを直接操作することはできません。 以下は、JavaScriptDataViewを実装するためのコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta na