2022-03-27 18:27:43 +08:00
< p > You are given an integer array < code > target< / code > . You have an integer array < code > initial< / code > of the same size as < code > target< / code > with all elements initially zeros.< / p >
< p > In one operation you can choose < strong > any< / strong > subarray from < code > initial< / code > and increment each value by one.< / p >
< p > Return < em > the minimum number of operations to form a < / em > < code > target< / code > < em > array from < / em > < code > initial< / code > .< / p >
< p > The test cases are generated so that the answer fits in a 32-bit integer.< / p >
< p > < / p >
2023-12-09 18:42:21 +08:00
< p > < strong class = "example" > Example 1:< / strong > < / p >
2022-03-27 18:27:43 +08:00
< pre >
< strong > Input:< / strong > target = [1,2,3,2,1]
< strong > Output:< / strong > 3
< strong > Explanation:< / strong > We need at least 3 operations to form the target array from the initial array.
[< strong > < u > 0,0,0,0,0< / u > < / strong > ] increment 1 from index 0 to 4 (inclusive).
[1,< strong > < u > 1,1,1< / u > < / strong > ,1] increment 1 from index 1 to 3 (inclusive).
[1,2,< strong > < u > 2< / u > < / strong > ,2,1] increment 1 at index 2.
[1,2,3,2,1] target array is formed.
< / pre >
2023-12-09 18:42:21 +08:00
< p > < strong class = "example" > Example 2:< / strong > < / p >
2022-03-27 18:27:43 +08:00
< pre >
< strong > Input:< / strong > target = [3,1,1,2]
< strong > Output:< / strong > 4
< strong > Explanation:< / strong > [< strong > < u > 0,0,0,0< / u > < / strong > ] -> [1,1,1,< strong > < u > 1< / u > < / strong > ] -> [< strong > < u > 1< / u > < / strong > ,1,1,2] -> [< strong > < u > 2< / u > < / strong > ,1,1,2] -> [3,1,1,2]
< / pre >
2023-12-09 18:42:21 +08:00
< p > < strong class = "example" > Example 3:< / strong > < / p >
2022-03-27 18:27:43 +08:00
< pre >
< strong > Input:< / strong > target = [3,1,5,4,2]
< strong > Output:< / strong > 7
< strong > Explanation:< / strong > [< strong > < u > 0,0,0,0,0< / u > < / strong > ] -> [< strong > < u > 1< / u > < / strong > ,1,1,1,1] -> [< strong > < u > 2< / u > < / strong > ,1,1,1,1] -> [3,1,< strong > < u > 1,1,1< / u > < / strong > ] -> [3,1,< strong > < u > 2,2< / u > < / strong > ,2] -> [3,1,< strong > < u > 3,3< / u > < / strong > ,2] -> [3,1,< strong > < u > 4< / u > < / strong > ,4,2] -> [3,1,5,4,2].
< / pre >
< p > < / p >
< p > < strong > Constraints:< / strong > < / p >
< ul >
< li > < code > 1 < = target.length < = 10< sup > 5< / sup > < / code > < / li >
< li > < code > 1 < = target[i] < = 10< sup > 5< / sup > < / code > < / li >
< / ul >