首页 > 试题广场 >

数字序列

[编程题]数字序列
  • 热度指数:1662 时间限制:C/C++ 2秒,其他语言4秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
一个由若干个取值范围在[1,2^31-1]的整数构成长度为N的数字序列,其中N<=5,000,000;求该数字序列上一段最小的连续区间的长度,要求该区间内正好包含了所有不同的数字,如果存在多个这样的区间,按照出现的顺序有序输出所有的区间起始和结束位置,序列的位置编号从1到N,其中最小的区间长度不会超过10,000。

输入描述:
第一行:N
第2至N+1行:每行1个数


输出描述:
第一行:最小的区间长度 区间个数X (以空格进行分隔)
第二行:X个区间的起始和结束位置,按照出现的顺序有序输出,多个区间之间以空格分隔,每个区间的输出格式如下所示:[start,end],最后以换行结尾
示例1

输入

10
1
1
3
4
6
6
5
1
3
3

输出

6 3
[2,7] [3,8] [4,9]

这道题你会答吗?花几分钟告诉大家答案吧!