AT_abc336_d [ABC336D] Pyramid
题目描述
对于正整数 $k$,**金字塔数列**(ピラミッド数列)是指长度为 $2k-1$ 的数列,其各项依次为 $1,2,\ldots,k-1,k,k-1,\ldots,2,1$。
给定一个长度为 $N$ 的数列 $A=(A_1,A_2,\ldots,A_N)$。
你可以对 $A$ 重复进行以下两种操作中的任意一种(可以操作 $0$ 次):
- 选择数列中的一项,将其值减少 $1$。
- 删除数列的首项或末项。
请你求出,通过上述操作可以得到的金字塔数列的最大可能尺寸 $k$。
在本题的约束条件下,可以证明通过操作一定能得到至少一种金字塔数列。
输入格式
输入以如下格式从标准输入读入:
> $N$ $A_1$ $A_2$ $\ldots$ $A_N$
输出格式
输出通过对数列 $A$ 重复进行题目描述中的操作后,能够得到的金字塔数列的最大尺寸。
说明/提示
## 约束
- $1\leq N\leq 2\times 10^5$
- $1\leq A_i\leq 10^9$
- 所有输入均为整数
## 样例解释 1
以 $A=(2,2,3,1,1)$ 为例,可以通过如下操作得到尺寸为 $2$ 的金字塔数列:
- 选择第 $3$ 项,将其减少 $1$,数列变为 $A=(2,2,2,1,1)$。
- 删除首项,数列变为 $A=(2,2,1,1)$。
- 删除末项,数列变为 $A=(2,2,1)$。
- 选择第 $1$ 项,将其减少 $1$,数列变为 $A=(1,2,1)$。
$(1,2,1)$ 就是尺寸为 $2$ 的金字塔数列。
另一方面,无论如何操作,都无法得到尺寸为 $3$ 或更大的金字塔数列,因此输出 $2$。
由 ChatGPT 4.1 翻译