#1144

Decrease Elements To Make Array Zigzag

specialist · 915 · lc medium +31 · verified · 49% accepted · 459 likes · top 35%

Description

You are given an integer array nums. Each move allows you to pick any element and reduce it by exactly 1.

An array A qualifies as a zigzag array if one of these two patterns holds:

- Every even-indexed element exceeds its neighbors: A[0] > A[1] < A[2] > A[3] < A[4] > ...

- Every odd-indexed element exceeds its neighbors: A[0] < A[1] > A[2] < A[3] > A[4] < ...

Return the minimum number of moves required to turn nums into a zigzag array.

Example 1:

Input: nums = [1,2,3]
Output: 2
Explanation: We can decrease 2 to 0 or 3 to 1.

Example 2:

Input: nums = [9,6,1,6,2]
Output: 4

Code

1
2
3