免責事項:この記事はブロガーオリジナル記事ですが、許可ブロガーなく再生してはなりません。https://blog.csdn.net/kingslave1/article/details/78073943
説明:
位置するロボット M × N- グリッドの目の左上隅。
たびに、ロボットは、唯一のステップダウンまたは右に移動することができます。ロボットは、グリッドの右下隅に到達しようとしています。
そこにどのように多くの異なるパスしますか?
例:Mを与える= 3
及び= N- 3
戻る 6
。
考えるM = 4
及び= N- 5
、リターン 35
。
問題解決:
public class Solution {
/**
* @param n, m: positive integer (1 <= n ,m <= 100)
* @return an integer
*/
public int uniquePaths(int m, int n) {
if(m==0||n==0) {
return 1;
}
int [][]dp=new int[m][n];
dp[0][0]=1;
for(int i=1;i<m;i++) {
dp[i][0]=1;
}
for(int j=1;j<n;j++) {
dp[0][j]=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];
}
}