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

超醜い数字JavaScript


超醜い数

超醜い数は正の数であり、そのすべての素因数はサイズkの与えられた素数リストの素数にあります。たとえば、[1、2、4、7、8、13、14、16、19、26、28、32]は、素数=[2、7、13、19]が与えられた最初の12個の非常に醜い数のシーケンスです。サイズ4の

問題

最初の引数として数値numを取り、2番目の引数として素数の配列arrを受け取るJavaScript関数を作成する必要があります。関数は、(num)番目の非常に醜い数を見つけて返す必要があります。

このためのコードは-

になります
const num = 7;
const arr = [2, 7, 14, 19];
const superUgly = (num = 1, arr = []) => {
   arr.sort((a, b)=> a - b);
   const ptr = [];
   const res = [];
   for(let i=0;i<arr.length;i++){
      ptr[i] = 0;
   };
   res.push(1);
   for(let i = 1; i < num; i++){
      let mn=Math.pow(2, 32) - 1;
      for(let j = 0; j < arr.length; j++){
         mn=Math.min(mn,arr[j]*res[ptr[j]])
      };
      res[i]=mn
      for(let j=0; j < arr.length; j++){
         if(mn % arr[j] === 0){
            ptr[j]++;
         };
      };
   };
   return res[num-1]
};
console.log(superUgly(num, arr));

出力

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

になります
16

  1. JavaScriptのスーパーキーワード?

    スーパー スーパー キーワードは、オブジェクトの親の関数にアクセスして呼び出すために使用されます。 super.prop およびsuper[expr] 式は、クラスとオブジェクトリテラルの両方のメソッド定義で判読できます。 「拡張」で使用されます 拡張を使用するクラス キーワード。 構文 super(arguments); 例 次の例では、「 Person」というクラスの特性 は学生と呼ばれる別のクラスに拡張されました 。両方のクラスで、一意のプロパティを使用しました。 ここで「スーパー キーワードは、親クラスからプロパティにアクセスするために使用されます (人)拡張クラス (学生)、

  2. JavaScript番号の例

    以下はJavaScriptの数字の例です- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <style>    body