एक समस्या को हल करने के लिए जिसमें n - लोगों की संख्या अब प्रत्येक व्यक्ति या तो अकेला हो सकता है या एक जोड़े में मौजूद हो सकता है, इसलिए हमें इन लोगों को जोड़ने के कुल तरीकों की संख्या निकालनी है।
इनपुट: 3 आउटपुट: 4 व्याख्या: [ {1}, {2}, {3},], [{1, 2}, {3}], [{1}, {2, 3}], [{1, 3}, {2}] ये चार तरीके ही एकमात्र तरीके हैं जिनसे हम इन 3 लोगों को जोड़ सकते हैं। इनपुट: 6 आउटपुट: 76समाधान खोजने का दृष्टिकोण
इस दृष्टिकोण में, हम इस समस्या की गणना के लिए यंग टैब्लो के सूत्र का उपयोग करने जा रहे हैं और हम जिस सूत्र का उपयोग करने जा रहे हैं वह है -
A[n] = A[n-1] + (n-1) * A[n-2]
उदाहरण
उपरोक्त दृष्टिकोण के लिए C++ कोड
#include <bits/stdc++.h> using namespace std; int Young_Tableau(int n){ int A[n + 1];// उत्तर स्टोर करने के लिए। A[1] = 1; // प्रारंभिक मान A[2] = 2; // प्रारंभिक मान for (int i = 3; i <= n; i++) { // "यंग टैब्लो" के सूत्र का उपयोग करके अपना उत्तर निकालना A[i] = A[i - 1] + (i - 1) * A[i - 2]; } return A[n]; // उत्तर लौटाना } int main(){ int n = 6; cout << Young_Tableau(n); return 0; }आउटपुट
76
उपरोक्त कोड की व्याख्या
उपरोक्त दृष्टिकोण में, हम बस यंग टैब्लो के सूत्र को लागू करते हैं, जहां हमें पिछली दो संख्याएं निकालने की आवश्यकता होती है। अब हम इन संख्याओं को सरणी इंडेक्स में स्टोर कर सकते हैं। सब्सक्रिप्टिंग द्वारा, हम अपने सूत्र के लिए उनके मान प्राप्त कर सकते हैं, और इसलिए हम अपना उत्तर निकालते हैं।
निष्कर्ष
इस ट्यूटोरियल में, हम लोगों को जोड़ने के तरीकों की संख्या निकालने की समस्या को हल करते हैं। हमने इस समस्या के लिए C++ प्रोग्राम और पूरा दृष्टिकोण (सामान्य) भी सीखा जिससे हमने इस समस्या को हल किया। हम यही प्रोग्राम C, Java, Python, और अन्य भाषाओं में भी लिख सकते हैं। आशा है आपको यह ट्यूटोरियल उपयोगी लगा होगा।