Python、C++、JavaScript、SQL、TypeScript の多様な LeetCode ソリューションを探索してください。面接の準備、学習、複数のプログラミング言語でのコードの練習に最適です。 Github リポジトリ リンク
上にロボットがいます xn
ロボットは最初はグリッドに配置されています。 左上隅 (つまり、 グリッド[0][0]
ロボットはそこに移動しようとします。 右下隅 (つまり、 グリッド[m - 1][n - 1]
) ロボットは、どの時点でも下または右のいずれかにしか移動できません。
2 つの整数が与えられると、 メートル
そして n
、 戻る ロボットが右下隅に到達するために通る可能性のある一意のパスの数.
テスト ケースは、答えが以下になるように生成されます。 2 * 10 9
.
例 1:
入力: m = 3、n = 7 出力: 28
例 2:
入力: m = 3、n = 2 出力: 3 説明: 左上隅から右下隅に到達するには、合計 3 つの方法があります。 1. 右 -> 下 -> 下 2. 下 -> 下 -> 右 3. 下 -> 右 -> 下
制約:
1 <= m、n <= 100
パイソン
functools から lru_cache クラスをインポート 解決策: @lru_cache(None) def uniquePaths(self, m: int, n: int) -> int: if m == 1 または n == 1: return 1 return self.uniquePaths(m-1 , n) + self.uniquePaths(m, n-1)