AT_jsc2022_final_b Increment and Rotate
题目描述
给定一个长度为 $N$ 的整数序列 $A = (A_1, A_2, \cdots, A_N)$。
你可以按任意顺序、任意次数(可以为 $0$ 次)重复以下两种操作:
- 操作 $1$:将 $A$ 的第一个元素加 $1$。即,执行 $A_1 := A_1 + 1$。
- 操作 $2$:将 $A$ 的第一个元素移动到末尾。即,执行 $A := (A_2, A_3, \cdots, A_N, A_1)$。
你的目标是使 $A$ 成为广义单调递增序列(即 $A_1 \leq A_2 \leq \cdots \leq A_N$)。请你求出为达成目标所需操作次数的最小值。
输入格式
输入以下内容,通过标准输入读取:
> $N\ A_1\ A_2\ \cdots\ A_N$
输出格式
输出答案。
说明/提示
### 样例解释 1
可以如下进行操作:
- 执行操作 $1$。此时 $A = (3,4,1,3)$。
- 执行操作 $2$。此时 $A = (4,1,3,3)$。
- 执行操作 $2$。此时 $A = (1,3,3,4)$。
### 数据范围
- $2 \leq N \leq 2 \times 10^5$
- $1 \leq A_i \leq 10^9$
- 输入的所有值均为整数。
由 ChatGPT 5 翻译