题解 | 二维斐波那契数列

二维斐波那契数列

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

#include <stdio.h>

int main() {
    int n, m;
    scanf("%d %d", &n, &m);
    long long a[n+1][m+1];  // 变长数组,精确分配
    
    // 初始化边界
    for (int i = 1; i <= n; i++) {
        a[i][1] = 1;
    }
    for (int j = 1; j <= m; j++) {
        a[1][j] = 1;
    }
    
    // 动态规划计算
    for (int i = 2; i <= n; i++) {
        for (int j = 2; j <= m; j++) {
            a[i][j] = (a[i-1][j] + a[i][j-1]) % (1000000000 + 7);
        }
    }

    printf("%lld", a[n][m]);
    return 0;
}

这个是非常bug的写法,数组的初始化需要具体值

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

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