इस समस्या में, हमें एक पूर्णांक n दिया जाता है जैसे कि n रेखाएँ लंबवत और n क्षैतिज रूप से ऐसी रखी जाती हैं कि इन रेखाओं के बीच n2 प्रतिच्छेदन हो। हमारा कार्य उन तरीकों की कुल संख्या ज्ञात करना है जिनके द्वारा इन चौराहों पर 4 वस्तुओं को रखा जा सकता है
इस तरह से कि किसी भी पंक्ति और कॉलम में एक से अधिक आइटम न हों।
समस्या को समझने के लिए एक उदाहरण लेते हैं,
इनपुट
n=4
आउटपुट
24
स्पष्टीकरण
इस समस्या को हल करने के लिए, हमें n लाइनों में से 4 क्षैतिज रेखाएँ चुननी होंगी जिनमें आइटम होंगे जो nC4 होंगे। अब, प्रत्येक क्षैतिज रेखा में n लंबवत रेखाएँ होती हैं, इसलिए किसी आइटम को पहली चयनित क्षैतिज रेखा में रखने का n तरीका होगा। फिर, हम अगली चयनित क्षैतिज रेखा की ओर बढ़ेंगे जहां n-1 संभावित प्लेसमेंट होंगे। और इसी तरह तीसरे को n-2 में और आगे n-3 तरीकों से रखा जा सकता है। तो, वाट्स की कुल संख्या n . होगी C4*n*(n-1)*(n-2)*(n-3)
एल्गोरिथम के कार्यान्वयन को दिखाने के लिए कार्यक्रम,
उदाहरण
#include <iostream> using namespace std; long long placeItems(int n) { return (1LL * (1LL * ((n) * (n - 1) * (n - 2) * (n - 3)) / (4 * 3 * 2 * 1)) * ((1LL * (n) * (n - 1) * (n - 2) * (n - 3)))); } int main() { int n = 4; cout<<"The number of way is which 4 items can be placed in the intersection of "<<n; cout<<" lines vertically and horizotally are "<<placeItems(n); return 0; }
आउटपुट
The number of way is which 4 items can be placed in the intersection of 4 lines vertically and horizotally are 24