编程题
### 问题描述 你有 $n$ 堆糖果,第 $i$ 堆包含 $s_i$ 颗糖果。 你可以执行以下操作:从第 $i$ 堆中取出一个糖果(如果至少有一个糖果)并放到第 $i+1$ 堆中。 请问最多可以移动几次,使糖果的数量的序列严格递增?若无论移动几次都无法使糖果的序列严格递增则输出 `-1` 。 注意,即使当堆中没有糖果时也是合法的。 ### 输入格式 第一行包含一个整数 $n$ $(1 \leq n \leq 100)$,表示堆的数量。 第二行包含 $n$ 个整数 $s_i$ $(0 \leq s_i \leq 10^9)$,表示每堆糖果的初始数量。 ### 输出格式 一行一个整数: - 若存在合法方案可以通过移动数次使得糖果的数量的序列严格递增,则输出最大次数。 - 若不存在合法方案使得糖果的数量序列严格递增则输出 `-1` 。 ### 样例输入 ```text 3 6 6 6 ``` ### 样例输出 ```text 17 ```
查看答案
赣ICP备20007335号-2