@@ -8,51 +8,51 @@ class Solution {
8
8
fun maximumAmount (coins : Array <IntArray >): Int {
9
9
val m = coins.size
10
10
val n = coins[0 ].size
11
- val dp = Array <IntArray ? >(m) { IntArray (n) }
12
- val dp1 = Array <IntArray ? >(m) { IntArray (n) }
13
- val dp2 = Array <IntArray ? >(m) { IntArray (n) }
14
- dp[0 ]!! [0 ] = coins[0 ][0 ]
11
+ val dp = Array <IntArray >(m) { IntArray (n) }
12
+ val dp1 = Array <IntArray >(m) { IntArray (n) }
13
+ val dp2 = Array <IntArray >(m) { IntArray (n) }
14
+ dp[0 ][0 ] = coins[0 ][0 ]
15
15
for (j in 1 .. < n) {
16
- dp[0 ]!! [j] = dp[0 ]!! [j - 1 ] + coins[0 ][j]
16
+ dp[0 ][j] = dp[0 ][j - 1 ] + coins[0 ][j]
17
17
}
18
18
for (i in 1 .. < m) {
19
- dp[i]!! [0 ] = dp[i - 1 ]!! [0 ] + coins[i][0 ]
19
+ dp[i][0 ] = dp[i - 1 ][0 ] + coins[i][0 ]
20
20
}
21
21
for (i in 1 .. < m) {
22
22
for (j in 1 .. < n) {
23
- dp[i]!! [j] = max(dp[i]!! [j - 1 ], dp[i - 1 ]!! [j]) + coins[i][j]
23
+ dp[i][j] = max(dp[i][j - 1 ], dp[i - 1 ][j]) + coins[i][j]
24
24
}
25
25
}
26
- dp1[0 ]!! [0 ] = max(coins[0 ][0 ], 0 )
26
+ dp1[0 ][0 ] = max(coins[0 ][0 ], 0 )
27
27
for (j in 1 .. < n) {
28
- dp1[0 ]!! [j] = max(dp[0 ]!! [j - 1 ], (dp1[0 ]!! [j - 1 ] + coins[0 ][j]))
28
+ dp1[0 ][j] = max(dp[0 ][j - 1 ], (dp1[0 ][j - 1 ] + coins[0 ][j]))
29
29
}
30
30
for (i in 1 .. < m) {
31
- dp1[i]!! [0 ] = max(dp[i - 1 ]!! [0 ], (dp1[i - 1 ]!! [0 ] + coins[i][0 ]))
31
+ dp1[i][0 ] = max(dp[i - 1 ][0 ], (dp1[i - 1 ][0 ] + coins[i][0 ]))
32
32
}
33
33
for (i in 1 .. < m) {
34
34
for (j in 1 .. < n) {
35
- dp1[i]!! [j] = max(
36
- max(dp[i]!! [j - 1 ], dp[i - 1 ]!! [j]),
37
- (max(dp1[i]!! [j - 1 ], dp1[i - 1 ]!! [j]) + coins[i][j]),
35
+ dp1[i][j] = max(
36
+ max(dp[i][j - 1 ], dp[i - 1 ][j]),
37
+ (max(dp1[i][j - 1 ], dp1[i - 1 ][j]) + coins[i][j]),
38
38
)
39
39
}
40
40
}
41
- dp2[0 ]!! [0 ] = max(coins[0 ][0 ], 0 )
41
+ dp2[0 ][0 ] = max(coins[0 ][0 ], 0 )
42
42
for (j in 1 .. < n) {
43
- dp2[0 ]!! [j] = max(dp1[0 ]!! [j - 1 ], (dp2[0 ]!! [j - 1 ] + coins[0 ][j]))
43
+ dp2[0 ][j] = max(dp1[0 ][j - 1 ], (dp2[0 ][j - 1 ] + coins[0 ][j]))
44
44
}
45
45
for (i in 1 .. < m) {
46
- dp2[i]!! [0 ] = max(dp1[i - 1 ]!! [0 ], (dp2[i - 1 ]!! [0 ] + coins[i][0 ]))
46
+ dp2[i][0 ] = max(dp1[i - 1 ][0 ], (dp2[i - 1 ][0 ] + coins[i][0 ]))
47
47
}
48
48
for (i in 1 .. < m) {
49
49
for (j in 1 .. < n) {
50
- dp2[i]!! [j] = max(
51
- max(dp1[i]!! [j - 1 ], dp1[i - 1 ]!! [j]),
52
- (max(dp2[i]!! [j - 1 ], dp2[i - 1 ]!! [j]) + coins[i][j]),
50
+ dp2[i][j] = max(
51
+ max(dp1[i][j - 1 ], dp1[i - 1 ][j]),
52
+ (max(dp2[i][j - 1 ], dp2[i - 1 ][j]) + coins[i][j]),
53
53
)
54
54
}
55
55
}
56
- return dp2[m - 1 ]!! [n - 1 ]
56
+ return dp2[m - 1 ][n - 1 ]
57
57
}
58
58
}
0 commit comments