#114. 最大镜像段长度

最大镜像段长度

最大镜像段

题目背景

聪聪喜欢玩数组。有一天,他发现了一种有趣的数组模式,他称之为“镜像段”。

题目描述

我们称数组中的一个“镜像”段是一组连续的元素,使得在数组的某个位置,同一组元素以相反的顺序出现。例如,在数组 {1,2,3,8,9,3,2,1}\{1, 2, 3, 8, 9, 3, 2, 1\} 中,最大的镜像段长度为 3(即 {1,2,3}\{1, 2, 3\} 部分)。返回给定数组中找到的最大镜像段的长度。

输入格式

输入以如下格式从标准输入中给出。

一行,包含若干个整数,用空格分隔。

输出格式

输出以如下格式输出到标准输出中。

最大镜像段的长度。

样例

1 2 3 8 9 3 2 1
3
1 2 1 4
3
7 1 2 9 7 2 1
2

样例解释

对于第一个样例,数组是 {1,2,3,8,9,3,2,1}\{1, 2, 3, 8, 9, 3, 2, 1\}。开头的段 {1,2,3}\{1, 2, 3\} 的反向段 {3,2,1}\{3, 2, 1\} 出现在数组的后面。这个镜像段的长度是 3。这是最大的镜像段。

对于第二个样例,数组是 {1,2,1,4}\{1, 2, 1, 4\}。开头的段 {1,2,1}\{1, 2, 1\} 的反向段 {1,2,1}\{1, 2, 1\} 出现在数组的后面(它本身就是反向的)。长度是 3。

对于第三个样例,数组是 {7,1,2,9,7,2,1}\{7, 1, 2, 9, 7, 2, 1\}。索引 1 处的段 {1,2}\{1, 2\} 的反向段 {2,1}\{2, 1\} 出现在索引 5 处。长度是 2。索引 0 处的段 {7}\{7\} 的反向段 {7}\{7\} 出现在索引 4 处。最大的长度是 2。

数据范围

每个测试用例的时间限制为 1 秒,内存限制为 1024 KiB。