#105. 数组最大跨度
数组最大跨度
数组最大跨度
题目背景
聪聪最近在研究数组的特性。他发现数组中相同元素的出现位置有时会很有趣,于是他定义了一个新的概念——“跨度”。
题目描述
考虑数组中某个值最左边和最右边出现的位置。我们称这两个位置之间(包含两端)的元素数量为“跨度”。如果一个值只出现一次,其跨度为 。返回给定数组中找到的最大跨度。(效率不是优先考虑的因素。)
输入格式
输入以如下格式从标准输入中给出。
一行,包含若干个整数,表示数组的元素。这些整数之间用空格分隔。
输出格式
输出以如下格式输出到标准输出中。
一个整数,表示数组中找到的最大跨度。
样例
1 2 1 1 3
4
1 4 2 1 4 1 4
6
1 4 2 1 4 4 4
6
样例解释
样例 1: 对于数组 [1, 2, 1, 1, 3]:
- 值 最左边出现在索引 ,最右边出现在索引 。跨度为 。
- 值 最左边出现在索引 ,最右边出现在索引 。跨度为 。
- 值 最左边出现在索引 ,最右边出现在索引 。跨度为 。 最大跨度为 。
样例 2: 对于数组 [1, 4, 2, 1, 4, 1, 4]:
- 值 最左边出现在索引 ,最右边出现在索引 。跨度为 。
- 值 最左边出现在索引 ,最右边出现在索引 。跨度为 。
- 值 最左边出现在索引 ,最右边出现在索引 。跨度为 。 最大跨度为 。
样例 3: 对于数组 [1, 4, 2, 1, 4, 4, 4]:
- 值 最左边出现在索引 ,最右边出现在索引 。跨度为 。
- 值 最左边出现在索引 ,最右边出现在索引 。跨度为 。
- 值 最左边出现在索引 ,最右边出现在索引 。跨度为 。 最大跨度为 。
数据范围
每个测试用例的时间限制为 秒,内存限制为 KiB。