zoukankan      html  css  js  c++  java
  • AcWing822. 走方格

    题目

    给定一个(n×m)的方格阵,沿着方格的边线走,从左上角((0,0))开始,每次只能往右或者往下走一个单位距离,问走到右下角((n,m))一共有多少种不同的走法。

    输入格式
    共一行,包含两个整数(n)(m)

    输出格式
    共一行,包含一个整数,表示走法数量。

    数据范围
    (1≤n,m≤10)
    输入样例:
    2 3
    输出样例:
    10


    题解:

    dfs深搜、用最小的举例进行模拟、任何点都只要向右、或者是向下两种情况,建系来处理该问题、然后利用dfs进行搜索、注意边界问题即可。


    代码:

    #include <iostream>
    #include <cstring>
    #include <algorithm>
    
    using namespace std;
    
    int n, m;
    int ans;
    
    // 深搜寻找合适方案
    void dfs(int x, int y)
    {
        // 临界情况
        if (x == n && y == m) ans ++;
        else 
        {
            if (y < m) dfs(x, y + 1);
            if (x < n) dfs(x + 1, y);
        }
    }
    
    int main()
    {
        cin >> n >> m;
        
        dfs(0, 0);
        
        cout << ans << endl;
        
        return 0;
    }
    
  • 相关阅读:
    网络资源(4)
    网络资源(3)
    网络资源(2)
    网络资源(1)
    OCP读书笔记(27)
    OCP读书笔记(26)
    OCP读书笔记(25)
    OCP读书笔记(24)
    OCP读书笔记(23)
    OCP读书笔记(22)
  • 原文地址:https://www.cnblogs.com/xiaofrank/p/15225816.html
Copyright © 2011-2022 走看看