go: add «3356. Zero Array Transformation II»

URL:	https://leetcode.com/problems/zero-array-transformation-ii/
This commit is contained in:
Matej Focko 2025-03-13 12:01:17 +01:00
parent 3949a90cfa
commit 234fce32c9
Signed by: mfocko
SSH key fingerprint: SHA256:icm0fIOSJUpy5+1x23sfr+hLtF9UhY8VpMC7H4WFJP8

View file

@ -0,0 +1,26 @@
package main
func minZeroArray(nums []int, queries [][]int) int {
k := 0
sum, diffs := 0, make([]int, len(nums)+1)
for i, x := range nums {
for sum+diffs[i] < x {
k++
if k > len(queries) {
return -1
}
left, right, maxDec := queries[k-1][0], queries[k-1][1], queries[k-1][2]
if right >= i {
diffs[max(left, i)] += maxDec
diffs[right+1] -= maxDec
}
}
sum += diffs[i]
}
return k
}