सुंदर व्यवस्था:
मान लीजिए कि हमारे पास 1 से संख्या तक के पूर्णांक हैं। हम एक सुंदर व्यवस्था . परिभाषित करते हैं एक सरणी के रूप में जो इन संख्या संख्याओं द्वारा सफलतापूर्वक निर्मित की जाती है यदि निम्न में से कोई एक इस सरणी में ith स्थिति (1 ≤ i ≤ N) के लिए सत्य है -
-
नौवें स्थान पर संख्या i से विभाज्य है।
-
i, वें स्थान पर संख्या से विभाज्य है।
समस्या
हमें एक जावास्क्रिप्ट फ़ंक्शन लिखना है जो एक संख्या, संख्या लेता है, और सुंदर व्यवस्था की गिनती देता है जिसे हम संख्या के लिए बना सकते हैं।
उदाहरण के लिए, यदि फ़ंक्शन का इनपुट है -
कॉन्स्ट इनपुट =2
तब आउटपुट होना चाहिए -
कॉन्स्ट आउटपुट =2
आउटपुट स्पष्टीकरण
पहली सुंदर व्यवस्था है [1,2]:
दूसरी खूबसूरत व्यवस्था है [2,1]:
उदाहरण
इसके लिए कोड होगा -
const num =4;const countArrangements =(num =1) => { let ans =0 const recur =(curr, vis) => {if (curr ===1){ ans++; } और { के लिए (चलो i =num; i; i--) { संभव होने दें =(i% curr ===0 || curr% i ===0); जाने दें =विज़ &1 <कोड स्पष्टीकरण:
हम एक परिणाम चर परिभाषित करते हैं (उत्तर ) और फिर एक पुनरावर्ती फ़ंक्शन create बनाएं कई शाखाओं में बंटी संभावनाओं को नेविगेट करने के लिए। इस पुनरावर्ती फ़ंक्शन के लिए केवल दो तर्कों की आवश्यकता होगी:वर्तमान में हम किस संख्या को रखना चाहते हैं (करंट) और कौन से स्पॉट पहले ही देखे जा चुके हैं (विज़)।
आउटपुट
और कंसोल में आउटपुट होगा -
<पूर्व>8पूर्व>