//不同路径: 一个机器人位于一个 m x n 网格的左上角。机器人每次只能向下或者向右移动一步。
// 机器人试图达到网格的右下角。问总共有多少条不同的路径?
#include<iostream>
#include<stack>
#include <vector>
#include<string>
#include<algorithm>
#include<unordered_map>
#include <climits>
#include<queue>
#include<unordered_set>
#include<cctype>
#include <sstream>
#include<set>
using namespace std;
#define maxsize 100
int he(vector<vector<int>> m) {
if (m.size() == 0)
return 0;
if (m[0].size() == 0)
return 0;
vector<vector<int>> dp(m.size(), vector<int>(m[0].size(), 0));
for (int i = 0; i < m.size(); i++) {
dp[i][0] = 1;
}
for (int i = 0; i < m[0].size(); i++) {
dp[0][i] = 1;
}
for (int i = 1; i < m.size(); i++) {
for (int j = 1; j < m[0].size(); j++) {
dp[i][j] = dp[i - 1][j] + dp[i][j - 1];
}
}
return dp[m.size() - 1][m[0].size() - 1];
}
int main() {
vector<vector<int>> m(7, vector<int>(3, 1));
cout << he(m);
return 0;
}
动态规划12-一个机器人位于一个 m x n 网格的左上角。机器人每次只能向下或者向右移动一步。// 机器人试图达到网格的右下角。问总共有多少条不同的路径?
计算机器人在网格中的不同移动路径总数
最新推荐文章于 2025-12-06 19:00:36 发布
代码展示了如何使用动态规划解决机器人从网格左上角到右下角的不同路径数量问题,通过递推计算出所有可能的步数。

708

被折叠的 条评论
为什么被折叠?



