Skip to content

Latest commit

 

History

History
31 lines (23 loc) · 651 Bytes

1827. 最少操作使数组递增.md

File metadata and controls

31 lines (23 loc) · 651 Bytes

1827. 最少操作使数组递增

题目传送门

点击这里

解题思路

这道题的做法是贪心思想,要保证我们的数组是递增的顺序,从第一个数字开始,下一个数字和上一个数字+1进行比较,取大值,比如1, 5, 4, 8,经过贪心的处理应该得到1, 5, 6, 8

代码

func minOperations(nums []int) int {
	var res int
	pre := nums[0] - 1
	for _, v := range nums {
		pre = max(pre+1, v)
		res += pre - v
	}
	return res
}

func max(a, b int) int {
	if b > a {
		return b
	}
	return a
}