सुपर अग्ली नंबर
सुपर बदसूरत संख्याएं सकारात्मक संख्याएं हैं जिनके सभी प्रमुख कारक दिए गए प्राइम सूची में आकार के प्राइम में हैं। उदाहरण के लिए, [1, 2, 4, 7, 8, 13, 14, 16, 19, 26, 28, 32] प्राइम दिए गए पहले 12 सुपर बदसूरत संख्याओं का क्रम है =[2, 7, 13, 19] आकार 4.
समस्या
हमें एक जावास्क्रिप्ट फ़ंक्शन लिखने की आवश्यकता है जो पहले तर्क के रूप में संख्या, संख्या लेता है और दूसरे तर्क के रूप में अभाज्य संख्याओं की एक सरणी, गिरफ्तारी करता है। फ़ंक्शन को (num)th सुपर बदसूरत नंबर ढूंढ़ना चाहिए और वापस करना चाहिए।
उदाहरण
इसके लिए कोड होगा -
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