3
int movesToMakeZigzag(vector<int> &nums) {6
if (nums.size() <= 1) return 0;8
/* Even indices are smaller */9
for (int i = 0; i < nums.size(); i += 2) {11
if (nums[i] >= nums[i + 1]) even += nums[i] - nums[i + 1] + 1;12
} else if (i == nums.size() - 1) {13
if (nums[i - 1] <= nums[i]) even += nums[i] - nums[i - 1] + 1;15
if (nums[i - 1] <= nums[i] || nums[i + 1] <= nums[i]) {16
even += nums[i] - min(nums[i - 1], nums[i + 1]) + 1;21
/* Odd indices are smaller */22
for (int i = 1; i < nums.size(); i += 2) {23
if (i == nums.size() - 1) {24
if (nums[i - 1] <= nums[i]) odd += nums[i] - nums[i - 1] + 1;26
if (nums[i - 1] <= nums[i] || nums[i + 1] <= nums[i]) {27
odd += nums[i] - min(nums[i - 1], nums[i + 1]) + 1;32
return min(even, odd);