第 2 题 最长连续段
题面描述
对于 $k$ 个整数构成的数组 $[b_1,b_2,\cdots,b_k]$,如果对 $1 \le i \lt k$ 都有 $b_{i+1} = b_i +1$,那么称数组 $b$ 是一个连续段。
给定由 $n$ 个整数构成的数组 $[a_1,a_2,\cdots,a_n]$,你可以任意重排数组 $a$中元素顺序。请问在重排顺序之后,$a$ 所有是连续段的子数组中,最长的子数组长度是多少?
例如,对于数组 $[1,0,2,4]$,可以将其重排为 $[4,0,1,2]$,有以下 $10$ 个子数组:
$[4],[0],[1],[2],[4,0],[0,1],[1,2],[4,0,1],[0,1,2],[4,0,1,2]$
其中除 $[4,0],[4,0,1],[4,0,1,2]$以外的子数组均是连续段,因此是连续段的子数组中,最长子数组长度为 $3$。
输入格式
第一行,一个正整数 $n$,表示数组长度。
第二行,$n$ 个整数 $a_1,a_2,\cdots,a_n$,表示数组中的整数。
输出格式
一行,一个整数,表示数组 $a$ 重排顺序后,所有是连续段的子数组的最长长度。
输入数据#2
复制
9
9 9 8 2 4 4 3 5 3
数据要求
对于 $40$% 的测试点,保证 $1 \le n \le 8$。
对于所有测试点,保证 $1 \le n \le 10^5$,$-10^9 \le a_i \le 10^9$ 。