ডেলানয় নম্বর − একটি Delannoy সংখ্যা D শুধুমাত্র পূর্ব ( → ), উত্তরপূর্ব ( ↗ ) এবং উত্তর ( ↑ ) ব্যবহার করে একটি আয়তক্ষেত্রাকার গ্রিডে দক্ষিণ-পশ্চিম কোণ (0,0) থেকে উত্তর-পূর্ব কোণে (a,b) পথের সংখ্যা বর্ণনা করে।
সুতরাং, আমরা বলতে পারি যে একটি পুনরাবৃত্তি সম্পর্ক হল,
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) নিন।
-
একটি পূর্ণসংখ্যা ফাংশন ডেলানয় (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
প্রদত্ত বিন্দুগুলির জন্য (a,b) =(3,3), পুনরাবৃত্তি সম্পর্ক ব্যবহার করে D(a-1,b) + D(a,b-1) + D(a-1,b-1) উৎপন্ন হবে আউটপুট হিসাবে Delannoy সংখ্যা '63'।