Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> C++

डेलानॉय नंबर क्या हैं? C++ में डेलानॉय नंबर ढूंढने का प्रोग्राम लिखें

डेलानॉय नंबर - एक डेलानॉय नंबर D एक आयताकार ग्रिड में दक्षिण-पश्चिम कोने (0,0) से उत्तर-पूर्व कोने (a,b) तक केवल अनुमत चरणों पूर्व ( → ), उत्तर-पूर्व ( ↗ ) और उत्तर ( ↑ ) का उपयोग करके पथों की संख्या दर्शाता है।

इस प्रकार, हम कह सकते हैं कि एक पुनरावृत्ति संबंध है,

D(a,b) = D(a-1,b) + D(a, b-1) + D(a-1, b-1) जहां D(0,0)=1।

उदाहरण के लिए, डेलानॉय नंबर D(3,3) 63 के बराबर है।

डेलानॉय नंबर ढूंढने का एल्गोरिदम

  • दो कोऑर्डिनेट्स (a,b) को इनपुट के रूप में लें।
  • एक पूर्णांक फ़ंक्शन generateDelannoy(int a, int b) जो कोऑर्डिनेट्स 'a' और 'b' को इनपुट के रूप में लेता है।
  • बेस केस में, हम जांचेंगे कि क्या कोऑर्डिनेट्स 'a' और 'b' शून्य हैं तो 1 लौटाएं।
  • अन्य मामले में डेलानॉय नंबर उत्पन्न करें और डेलानॉय नंबर उत्पन्न करने के लिए पुनरावृत्ति संबंध D(a-1,b) + D(a,b-1) + D(a-1,b1) का उपयोग करके परिणाम लौटाएं।

उदाहरण

#include<iostream>
using namespace std;
int generateDelannoy(int a, int b){
    int d=1;
    if((a==0) || (b==0)){
        d=1;
    } else {
        d = generateDelannoy(a-1,b) + generateDelannoy(a,b-1) + generateDelannoy(a-1,b-1);
    }
    return d;
}
int main(){
    int a=3;
    int b=3;
    int result=0;
    result= generateDelannoy(a,b);
    cout<<result<<endl;
}

आउटपुट

उपरोक्त कोड चलाने से आउटपुट इस प्रकार उत्पन्न होगा,

63

दिए गए पॉइंट्स (a,b) = (3,3) के लिए, पुनरावृत्ति संबंध D(a-1,b) + D(a,b-1) + D(a-1,b-1) का उपयोग करके डेलानॉय नंबर '63' आउटपुट के रूप में उत्पन्न होगा।

  1. - चोरी हुए कीबोर्ड की न्यूनतम संभव संख्या ढूंढने के लिए C++ प्रोग्राम

    मान लीजिए हमारे पास n तत्वों वाला एक ऐरे A है। एक इलेक्ट्रॉनिक स्टोर था, जहां पिछली रात डकैती हुई थी। स्टोर के अंदर मौजूद सभी कीबोर्ड किसी पूर्णांक संख्या x से आरोही क्रम में क्रमांकित थे। उदाहरण के लिए, x=4 के लिए और स्टोर में 3 कीबोर्ड थे, तो उपकरणों के सूचकांक 4, 5 और 6 थे। यदि x=10 और उनमें से 7

  1. ग्रिड में रोशन सेल्स की संख्या ज्ञात करने का C++ प्रोग्राम ग्रिड में रोशन सेल्स की संख्या ज्ञात करने का C++ प्रोग्राम

    मान लीजिए h × w आयाम का एक ग्रिड दिया गया है। ग्रिड की सेल्स में बल्ब या बाधाएँ हो सकती हैं। एक बल्ब सेल स्वयं और अपने दाएँ, बाएँ, ऊपर, नीचे की सेल्स को रोशन करता है। प्रकाश सेल्स के माध्यम से चमकता है जब तक कि कोई बाधा सेल इसे न रोक दे। बाधा सेल न तो रोशन हो सकती है और न ही प्रकाश को गुजरने देती ह

  1. - C++ प्रोग्राम: तीन संख्याओं में सबसे बड़ी संख्या खोजें

    परिचयतीन संख्याओं में सबसे बड़ी संख्या if स्टेटमेंट का कई बार उपयोग करके पाई जा सकती है। यह एक प्रोग्राम में इस प्रकार दिया गया है - उदाहरण#include <iostream> using namespace std; int main() { int a = 5, b = 1, c = 9; if (a > b) { if (a > c) cout << a &