HJ91 走方格的方案数

知识点动态规划基础数学

描述

对于给定的由 n+1条横线和 m+1 条竖线组成的网格,共相交形成 n×m 个格点。

现在,你从网格的左上角格点出发,只能沿着网格线向右或向下走,求解走到右下角格点的不同方案数。

输入描述:

在一行上输入两个整数 n,m(1≦n,m≦8),代表网格的行数和列数。

输出描述:

输出一个整数,代表不同的行走方案数。

示例1

输入:

复制代码
2 2

输出:

复制代码
6

说明:

在这个样例中,所绘出的网格图如下图所示。

cpp 复制代码
#include<iostream>
#include<vector>
using namespace std;

int recursion(int i, int j, int m, int n){ //递归计算方案数
    if(n == i || m == j) //到边界只有一种走法
        return 1;
    return recursion(i + 1, j, m, n) + recursion(i, j + 1, m, n); //进入子问题
}
int main(){
    int m, n;
    while(cin >> n >> m){
        cout << recursion(0, 0, m, n) << endl;
    }
    return 0;
}
相关推荐
Yupureki4 分钟前
《Linux网络编程》1.网络基础
linux·运维·服务器·c语言·网络·c++
ltl6 分钟前
SM3 vs SHA-256:两个哈希函数的设计哲学与性能实测
后端·算法
知星小度S10 分钟前
算法训练之递归(一)
数据结构·算法
十五年专注C++开发13 分钟前
银河麒麟V10系统安装vcpkg的方法
c++·cmake·vcpkg
未来之窗软件服务16 分钟前
SenseVoicecpp ggml-webgpu大模型[AI人工智能(七十五)]—东方仙盟
c++·人工智能·算法·仙盟创梦ide·东方仙盟
寂柒20 分钟前
C++——堆
开发语言·c++
郝学胜-神的一滴24 分钟前
解锁CS数据存储的核心逻辑:从结构选择到表单设计的全解析
linux·服务器·数据库·c++·后端·oracle
ZPC821029 分钟前
ROS 2 手眼标定完整方案
人工智能·算法·性能优化·机器人
Q741_14742 分钟前
每日一题 力扣 3418. 机器人可以获得的最大金币数 力扣 215. 数组中的第K个最大元素 动态规划 TopK问题 C++ 题解
c++·算法·leetcode·动态规划·topk
haibindev42 分钟前
写了10年代码的人,在AI编程时代反而最值钱
c++·ai编程·claude