4489.最长连续段

通过数:16提交数:38学校:南京邮电大学考研机试真题 题目列表 标签
题目描述 对于 $k$ 个整数构成的数组 $[b 1,b 2,…,b k]$,如果对 $1 \le i < k$ 都有 $b {i+1}=b i+1$,那么称数组 $b$ 是一个连续段。 给定由 $n$ 个整数构成的数组 $[a 1,a 2,…,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,…,a n$,表示数组中的整数。 输出格式 一行,一个整数,表示数组 $a$ 重排顺序后,所有是连续段的子数组的最长长度。 数据范围 $1 \le n \le 10^5$, $-10^9 \le a i \le 10^9$ 输入样例1 4 1 0 2 4 输出样例1 3 输入样例2 9 9 9 8 2 4 4 3 5 3 输出样例2 4
C
补全
点击调试按钮即可调试代码。

点击提交按钮即可提交代码。