Skip to content

Commit 10a88dc

Browse files
authored
Update 0576-out-of-boundary-paths.kt
1 parent 92e9779 commit 10a88dc

File tree

1 file changed

+3
-9
lines changed

1 file changed

+3
-9
lines changed

kotlin/0576-out-of-boundary-paths.kt

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,8 @@ class Solution {
55
val dirs = intArrayOf(0, 1, 0, -1, 0)
66
val dp = Array (m) { Array (n) { LongArray (maxMove + 1) { -1L } } }
77

8-
fun outOfBounds(i: Int, j: Int) = i < 0 || i == m || j < 0 || j == n
9-
108
fun dfs(i: Int, j: Int, k: Int): Long {
11-
if (outOfBounds(i, j)) return 1L
9+
if (i < 0 || i == m || j < 0 || j == n) return 1L
1210
if (k == 0) return 0L
1311
if (dp[i][j][k] != -1L) return dp[i][j][k]
1412

@@ -30,15 +28,13 @@ class Solution {
3028
val dirs = intArrayOf(0, 1, 0, -1, 0)
3129
val dp = Array (m) { Array (n) { LongArray (maxMove + 1) } }
3230

33-
fun outOfBounds(i: Int, j: Int) = i < 0 || i == m || j < 0 || j == n
34-
3531
for (k in 1..maxMove) {
3632
for (i in 0 until m) {
3733
for (j in 0 until n) {
3834
for (dir in 0..3) {
3935
val i2 = i + dirs[dir]
4036
val j2 = j + dirs[dir + 1]
41-
if (outOfBounds(i2, j2))
37+
if (i2 < 0 || i2 == m || j2 < 0 || j2 == n)
4238
dp[i][j][k]++
4339
else
4440
dp[i][j][k] = (dp[i][j][k] + dp[i2][j2][k - 1]) % mod
@@ -58,15 +54,13 @@ class Solution {
5854
val dirs = intArrayOf(0, 1, 0, -1, 0)
5955
val dp = Array(m) { Array(n) { LongArray(maxMove + 1) } }
6056

61-
fun outOfBounds(i: Int, j: Int) = i < 0 || i == m || j < 0 || j == n
62-
6357
for (k in 1..maxMove) {
6458
for (i in m - 1 downTo 0) {
6559
for (j in n - 1 downTo 0) {
6660
for (dir in 0..3) {
6761
val i2 = i + dirs[dir]
6862
val j2 = j + dirs[dir + 1]
69-
if (outOfBounds(i2, j2))
63+
if (i2 < 0 || i2 == m || j2 < 0 || j2 == n)
7064
dp[i][j][k]++
7165
else
7266
dp[i][j][k] = (dp[i][j][k] + dp[i2][j2][k - 1]) % mod

0 commit comments

Comments
 (0)