P16018 [ICPC 2021 NAC] Mountainous Palindromic Subarray

题目描述

如果一个数组先严格递增,后严格递减,则称其为 **山脉数组**。注意,**山脉数组** 的长度必须至少为 $3$。 **子数组** 定义为通过从原数组中删除某个前缀和某个后缀(可以为空)后得到的数组。 如果一个数组或子数组的正向序列与反向序列相同,则称其为 **回文数组**。 给定一个整数数组,请计算既是 **山脉数组** 又是 **回文数组** 的最长 **子数组** 的长度。

输入格式

输入的第一行包含一个整数 $n$($1 \le n \le 10^6$),表示数组中整数的个数。 接下来的 $n$ 行,每行包含一个整数 $x$($1 \le x \le 10^9$)。这些值按顺序构成给定的数组。

输出格式

输出一个整数,表示最长的既是山脉数组又是回文数组的子数组的长度。如果不存在这样的子数组,则输出 $-1$。

说明/提示

翻译由 DeepSeek V3.2 完成