1836. [算法课贪婪] 最少操作使数组递增

给你一个整型数组 nums 。每一次操作中,你可以选择数组中一个元素,并将它增加 1 。比方说,如果 nums = [1,2,3] ,你可以选择增加 nums[1] 得到 nums =[1,3,3] 。

请你返回使 nums 严格递增的最少操作次数。

当数组 nums 满足对于所有的 0 <= i < nums.length - 1 都有 nums[i] < nums[i+1] ,我们称它是严格递增的。一个长度为 1 的数组是严格递增的一种特殊情况。

输入

第一行输入一个整数 n \ (1 \leq n \leq 5000) 代表数组的长度。

第二行输入一行数字代表数组 nums \ (1 \leq nums_i \leq 10^4),数字与数字之间用空格间开。

输出

输出一个整数代表使数组严格递增的最小操作数。

样例

标准输入 复制文本
3
1 1 1
标准输出 复制文本
3
标准输入 复制文本
5
1 5 2 4 1
标准输出 复制文本
14
标准输入 复制文本
1
8
标准输出 复制文本
0
登录以提交代码。
单点时限 1 秒
内存限制 256 MB
提交 483
通过 408