Skip to content

Commit 0fac6e9

Browse files
committed
1
1 parent 6283eee commit 0fac6e9

File tree

1 file changed

+41
-0
lines changed

1 file changed

+41
-0
lines changed
Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
package p34xx
2+
3+
import util.expect
4+
5+
fun main() {
6+
class Solution {
7+
fun minTime(skill: IntArray, mana: IntArray): Long {
8+
var sum = 0L
9+
var dp = LongArray(skill.size) {
10+
sum += skill[it] * mana[0]
11+
sum
12+
}
13+
14+
for (i in 1 until mana.size) {
15+
16+
sum = 0L
17+
var offset = 0L
18+
val newDp = LongArray(skill.size) {
19+
offset = maxOf(offset, dp[it] - sum)
20+
21+
sum += skill[it] * mana[i]
22+
sum
23+
}
24+
25+
newDp.forEachIndexed { index, v ->
26+
newDp[index] = v + offset
27+
}
28+
29+
dp = newDp
30+
}
31+
32+
return dp.last()
33+
}
34+
}
35+
36+
expect {
37+
Solution().minTime(
38+
intArrayOf(1, 5, 2, 4), intArrayOf(5, 1, 4, 2)
39+
)
40+
}
41+
}

0 commit comments

Comments
 (0)