题解 | 二维斐波那契数列

二维斐波那契数列

https://www.nowcoder.com/practice/a1951ca9431646ff8f9bc6f6d24d1e0a

#include <stdio.h>
#define mod (1000000000+7)//这里不可以是1e9+7,会被识别为浮点型double导致取模失败。要加LL定义为long long型。递归不可以计算二维比值>30的,会延迟爆炸。所以还是数组完美,注意传递二维数组指针

int an(int n,int m,int(*a)[m])
{
for(int i=0;i<n;i++)
{
for(int j=0;j<m;j++)
{
    if(i==0||j==0)
    a[i][j]=1;
    if(i>=1&&j>=1)
    a[i][j]=(a[i-1][j]+a[i][j-1])%mod;

}

}
return a[n-1][m-1];
}
int main() {
    int n,m,a[1000][1000];
scanf("%d %d",&n,&m);
printf("%d",an(n,m,a));

    return 0;
}

全部评论

相关推荐

哞客37422655...:这就是真实社会,没有花里胡哨的安慰,让你感受到阶级分明,不浪费彼此时间。虽然露骨但是唉
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务