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

Delannoy नंबर क्या हैं? Delannoy नंबर खोजने के लिए C++ में एक प्रोग्राम लिखें

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

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

D(a,b) = D(a-1,b) + D(a, b-1) + D(a-1, b-1) where D(0,0)=1.

उदाहरण के लिए, Delannoy संख्या D(3,3) 63 के बराबर है।

डेलनॉय नंबर खोजने के लिए एल्गोरिदम

  • इनपुट के रूप में दो निर्देशांक (a,b) लें।

  • एक पूर्णांक फ़ंक्शन उत्पन्न करता हैDelannoy(int a, int b) जो निर्देशांक 'a' और 'b' को इनपुट के रूप में लेता है।

  • मूल मामले में, हम जाँच करेंगे कि यदि निर्देशांक 'a' और 'b' शून्य हैं तो 1 लौटाएँ।

  • अन्य मामले में Delannoy संख्या उत्पन्न करें और Delannoy संख्या 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(a1,b-1);
   }
   return d;
}
int main(){
   int a=3;
   int b=3;
   int result=0;
   result= generateDelannoy(a,b);
   cout<<result<<endl;
}

आउटपुट

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

63

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


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

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

  1. C++ प्रोग्राम एक ग्रिड में प्रबुद्ध कोशिकाओं की संख्या का पता लगाने के लिए

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

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

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