[CODING TEST]:::2つのLV 1を加算


[質問]


整数配列番号.numbersから異なるインデックスの2つの数を抽出し、作成できるすべての数を昇順に配列に入れ、solution関数の戻りを完了してください.

[制限]

  • numbersの長さは2または100より大きい.
  • numbersのすべての数字は0または100以下です.
  • [I/O例]


    numbersreturn[2,1,3,4,1][2,3,4,5,6,7][5,0,2,7][2,5,7,9,12]

    [IO例説明]


    I/O例#1
  • 2=1+1.(1この数字には2つあります)
  • 3=2+1.
  • 4=1+3.
  • 5=1+4=2+3.
  • 6=2+4.
  • 7=3+4.
  • したがって、[2,3,4,5,6,7]に戻る必要があります.I/O例#2
  • 2=0+2.
  • 5=5+0.
  • 7=0+7=5+2.
  • 9=2+7.
  • 12=5+7.
  • したがって、[2,5,7,9,12]に戻る必要があります.

    [answers.js]

    function solution(numbers) {
      const result = [];
      for (let i = 0; i < numbers.length; i++) {
        for (let j = i + 1; j < numbers.length; j++) {
          result.push(numbers[i] + numbers[j]);
        }
      }
      const answer = [...new Set(result)];
      //set을 이용하면 동일한 값을 제거 할 수 있음
      return answer.sort((a, b) => a - b);
    }

    new Set([iterable]);


    元の値でもオブジェクトリファレンスでも、Setオブジェクトは一意の値を格納できます.
    パラメータ-iterable
    重複可能なオブジェクトが渡されると、すべての要素が新しいセットに追加されます.パラメータが指定されていないかnullが渡されていない場合は、新しい設定は空です.
    Setオブジェクトは値集合であり,要素を挿入順にループすることができる.1つのセット内の値は1回しか表示されません.すなわち,ある値はSet集合において一意である.
    [codesandbox]
    https://codesandbox.io/s/coding-test-daily-26-4nqmbm