Skip to content

Commit b552910

Browse files
committed
Update Swift/62. Unique Paths.swift
1 parent c2da14a commit b552910

File tree

1 file changed

+20
-0
lines changed

1 file changed

+20
-0
lines changed

Swift/62. Unique Paths.swift

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
// 62. Unique Paths
2+
// 16 ms, 39.53%
3+
func uniquePaths(_ m: Int, _ n: Int) -> Int {
4+
pathMatrix = Array(repeating: Array(repeating: 0, count: n+1), count: m+1)
5+
return pathMatrix(m, n)
6+
}
7+
8+
private var pathMatrix: [[Int]]!
9+
private func pathMatrix(_ m: Int, _ n: Int) -> Int {
10+
if m <= 0 || n <= 0 { return 0 }
11+
if m < 2 || n < 2 { pathMatrix[m][n] = 1; return 1 }
12+
13+
if pathMatrix[m-1][n] == 0 {
14+
pathMatrix[m-1][n] = pathMatrix(m-1, n)
15+
}
16+
if pathMatrix[m][n-1] == 0 {
17+
pathMatrix[m][n-1] = pathMatrix(m, n-1)
18+
}
19+
return pathMatrix[m-1][n] + pathMatrix[m][n-1]
20+
}

0 commit comments

Comments
 (0)