什么是德兰诺伊数字?用C ++编写程序以查找Delannoy数
Delannoy数-Delannoy数Dcorner(a,b)仅使用东(→),东北(↗)和北(↑)允许的步长描述矩形网格中从西南角(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)作为输入。
一个generateDelannoy(inta,intb)将坐标“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”作为输出。
热门推荐
10 医院探望朋友祝福语简短
11 毕业祝福语简短女朋友
12 春节虎年爸妈祝福语简短
13 儿童毕业祝福语 简短6
14 开工仪式横幅祝福语简短
15 孩子日常祝福语大全简短
16 清晨寄语诗句祝福语简短
17 结婚送亲认亲祝福语简短
18 虎年喝酒拜年祝福语简短