go: add «3356. Zero Array Transformation II»
URL: https://leetcode.com/problems/zero-array-transformation-ii/
This commit is contained in:
parent
3949a90cfa
commit
234fce32c9
1 changed files with 26 additions and 0 deletions
26
go/zero-array-transformation-ii.go
Normal file
26
go/zero-array-transformation-ii.go
Normal 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
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue