classSolution{public:/*动态规划五部曲:1、确定dp数组以及下标的含义:dp[i][j],到dp[i][j]位置上的不同路径数量;2、确定递推公式:每次可由上边或者左边的位置移动而来,所以dp[i][j] = dp[i-1][j] + dp[i][j-1];3、dp数组如何初始化:dp[0][i]=1,dp[i][0]=1;4、确定遍历顺序:根据递推公式,从前往后遍历,从上往下遍历;5、举例推导dp数组;*/intuniquePaths(int m,int n){vector<vector<int>>dp(m,vector<int>(n,0));for(int i =0; i < m; i++) dp[i][0]=1;for(int i =0; i < n; i++) dp[0][i]=1;for(int i =1; i < m; i++){for(int j =1; j < n; j++){dp[i][j]= dp[i-1][j]+ dp[i][j-1];}}return dp[m-1][n-1];}};
classSolution{public:intuniquePathsWithObstacles(vector<vector<int>>& obstacleGrid){int m = obstacleGrid.size();int n = obstacleGrid[0].size();vector<vector<int>>dp(m,vector<int>(n,0));for(int i =0; i < m; i++){if(obstacleGrid[i][0]==1)break;dp[i][0]=1;}for(int i =0; i < n; i++){if(obstacleGrid[0][i]==1)break;dp[0][i]=1;}for(int i =1; i < m; i++){for(int j =1; j < n; j++){if(obstacleGrid[i][j]==1) dp[i][j]=0;else dp[i][j]= dp[i-1][j]+ dp[i][j-1];}}return dp[m-1][n-1];}};
一、背景 当我们在 idea 中修改代码的时候,idea 并不会自动的重启去响应我们修改的内容,而是需要我们手动的重新启动项目才可以生效,这个是非常不方便,但是可以在 idea 中开启这个自动热部署的功能。 我的 idea 版本为 2022.3.3 。…
详细说明
Common Sense Machines(CMS):立志成为图像生成适用于游戏引擎的3D资产AI产品-喜好儿aigc详细说明:https://heehel.com/CSM-3d 官方网站:https://www.csm.ai/ 使用体验网址:https://3d.csm.ai/ 来…